我有以下代码,当用户点击按钮时,它会打开键盘属性对话框:
Process proc = new Process();
proc.EnableRaisingEvents = true;
proc.StartInfo.UseShellExecute = true;
proc.StartInfo.FileName = "main.cpl";
proc.StartInfo.Arguments = "keyboard";
proc.StartInfo.CreateNoWindow = true;
proc.StartInfo.WindowStyle = ProcessWindowStyle.Maximized;
proc.Start();
proc.WaitForExit();
int keyBoardWindow;
while ((keyBoardWindow = FindWindow(null, "Keyboard Properties")) == 0) ;
int isSet = SetForegroundWindow(keyBoardWindow);
当您的系统的默认语言是英语时,此代码可以正常工作,如果是其他语言(例如中文),则FindWindow
方法不会退出。可能是因为对话框窗口不再具有名称“键盘属性”。你们的人建议什么?我应该如何处理这个问题,这样我就可以打开键盘属性对话框,无论系统语言如何。
答案 0 :(得分:1)