键盘输入语言在从我的 WF 应用程序执行 Process.Start() 时发生了变化

本文关键字:Start Process 变化 发生了 执行 应用程序 语言 输入 WF 我的 键盘 | 更新日期: 2023-09-27 18:37:09

我有一个 C# Windows 窗体应用程序,我最终在其中启动另一个程序

Process.Start()

对于所有使用我的软件的人,新程序现在从英文键盘开始。

有没有办法解决这个问题?

仅供参考,Windows 窗体应用程序仅提供英语版本。

键盘输入语言在从我的 WF 应用程序执行 Process.Start() 时发生了变化

我有两个想法:

第一个是检查您的所有项目设置,看看您是否在某处设置了英语键盘或仅设置了英语语言。

第二个想法从这里开始:

1-为了获得更好的性能,请将机器安装语言设置为: 如下: C#

public static InputLanguage GetInputLanguageByName(string inputName)  
{  
    foreach (InputLanguage lang in InputLanguage.InstalledInputLanguages)  
    {  
        if (lang.Culture.EnglishName.ToLower().StartsWith(inputName))  
            return lang;  
    }  
    return null;  
} 

2-在运行时设置首选语言:C#

public void SetKeyboardLayout(InputLanguage layout)  
{  
InputLanguage.CurrentInputLanguage = layout;  
}