private static void Run(EyeXHost eyeXHost) { Console.CursorVisible = false; Console.WriteLine("AVAILABLE EYEX PROFILES"); Console.WriteLine("======================="); Console.WriteLine(); // Start the EyeX host. Version engineVersion; if (!StartHost(eyeXHost, out engineVersion)) { Console.ForegroundColor = ConsoleColor.Red; Console.WriteLine("Could not connect to EyeX Engine."); return; } // Too old EyeX Engine installed? if (engineVersion.Major != 1 || engineVersion.Major == 1 && engineVersion.Minor < 4) { Console.ForegroundColor = ConsoleColor.Yellow; Console.WriteLine("This sample requires EyeX Engine 1.4."); return; } // Create key bindings from the profiles. var keyBindings = CreateKeyBindings(eyeXHost.UserProfiles); foreach (var keyBinding in keyBindings) { Console.WriteLine("[{0}] {1}", keyBinding.Key, keyBinding.Value); } Console.WriteLine(); Console.WriteLine("Select a profile to set it as the current one."); Console.WriteLine("Press ESC to abort."); // Read input from the user. var result = Console.ReadKey(true); if (result.Key != ConsoleKey.Escape) { if (keyBindings.ContainsKey(result.Key)) { // Change the profile. var profile = keyBindings[result.Key]; eyeXHost.SetCurrentUserProfile(profile); } } }