更改输入语言不起作用

时间:2016-05-24 16:30:38

标签: c# winforms

我需要更改键盘输入语言并将其从C#设置为英语(我需要一个.exe来执行此操作),问题是该程序在Visual Studio中有效,但是当我启动.exe时它没有&# 39;更换键盘。

我在winforms应用程序的主要方法中有这个

static void Main(){
    InputLanguage englishLayout = GetInputLanguageByName("english");
    if (englishLayout!=null) {
        InputLanguage.CurrentInputLanguage = englishLayout;
    }
    else
    {
        Console.WriteLine("nulo.");
    }

此方法搜索已安装的语言

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

只需从应用程序中获取(不需要表单,只需更改键盘语言),但是当我在Visual Studio外部启动.exe时,它无法正常工作。

0 个答案:

没有答案