SendKeys.SendWait不会在Windows 7中发送"{ENTER}"

jpi*_*s14 4 .net sendkeys visual-studio-2008

我在使用XP和Windows 7的Visual Studio 2008中尝试过这个:

SendKeys.SendWait("sometext{ENTER}{ENTER}")

这是用于在打开文件对话框中打开文件.它适用于带VS2008的XP,但是当我尝试使用Windows 7时,似乎{ENTER}键没有通过.

是否存在已知问题,或者我做错了什么?

小智 6

这应该工作,您也可以尝试使用\n:

System.Windows.Forms.SendKeys.SendWait("Hello World{ENTER}Testing\n");
Run Code Online (Sandbox Code Playgroud)

这适用于我的Windows 7机器.您遇到的问题很可能是您尝试发送密钥的应用程序在不同的特权帐户下运行(例如:作为管理员).除非您以管理员身份运行应用程序,否则这将阻止用户级应用程序发送密钥.尝试以管理员身份运行Visual Studio并再次测试代码.

Right click Visual Studio -> Run As Administrator
Run Code Online (Sandbox Code Playgroud)

  • 这次真是万分感谢.我已经坚持了3天,因为它根本没有将ENTER键发送到活动窗口,直到我按照你的建议运行应用程序作为管理员. (2认同)