Проблема, которую мы видим, не так уж уникальна, я надеюсь.
Во-первых, немного предыстории: мы запускаем несколько приложений с Process.Start (startInfo) под другой учетной записью пользователя (с более высокими привилегиями) из приложения C # (своего рода запуска оболочки), запущенного подограниченная привилегированная учетная запись пользователя, вошедшая в систему.
У нас возникли проблемы с переключением клавиатуры для разных языков с комбинациями клавиш Alt + Shift в приложениях, запущенных с более высокими привилегиями, вне процесса.Хотя у исходного запускающего приложения нет проблем с переключением клавиатуры, у запущенных приложений такой возможности нет.
Мы добавили языковые клавиатуры в олицетворенный профиль пользователя и не видим изменений, переключатель клавиатуры недоступен.Мы также добавили LoadUserProfile = true к параметрам ProcessStartInfo, и тем не менее переключение клавиатуры языка не работает.На данный момент нам нужна помощь для выявления и устранения этой проблемы.Это поддерживается?Если да, то как запустить исполняемый файл в отдельном процессе под другой учетной записью и дать пользователю возможность переключать клавиатуры?
Если это не поддерживается в Windows при запуске исполняемых файлов вне процессаМожет ли эта возможность переключения языков быть обеспечена программно и как?