2012-01-03 54 views
0

我有一个应用程序使用Windows Input Simulator。我用它来模拟父应用程序的Ctrl-S按键。当Windows桌面被锁定时会引发异常键盘笔画模拟失败,Windows桌面被锁定

例外:CONTROL的按键模拟失败。 在WindowsInput.InputSimulator.SimulateKeyDown(VirtualKeyCode的keyCode) 在WindowsInput.InputSimulator.SimulateModifiedKeyStroke(VirtualKeyCode modifierKeyCode,VirtualKeyCode键代码)

这里是我的代码:

InputSimulator.SimulateModifiedKeyStroke(VirtualKeyCode.CONTROL, VirtualKeyCode.VK_S); 
InputSimulator.SimulateKeyDown(VirtualKeyCode.RETURN); 

任何想法?

回答

0

我可以想象这是Windows API在PC锁定时不会对这种东西做出反应。

1

按设计。当机器被锁定时,安全桌面被激活。哪些方法可以对付将密钥划入用户名/密码文本框的程序。

您可以使用SystemEvents.SessionSwitch事件来检测机器被锁定和解锁。没有记录的方式来检测机器当前是否锁定,您只能看到转换。

+0

有一些方法可以让输入工作, TeamViewer当然设法将输入发送到登录屏幕。据推测,这需要从具有适当权限的服务中发送密钥。 (因为我没有提供详细信息,所以评论...) – 2012-01-03 14:19:51

+0

谢谢。我想,但真的希望有办法做到这一点。 – Web 2012-01-04 13:21:32