我正在尝试将简单的"CTRL+C"
笔划发送到另一个窗口。
我们的想法是从IE/FF/Chrome/IE/Excel/Word
抓取文字。无论如何,我尝试使用SendKeys.Send()
和SendKeys.SendWait()
以及InputSimulator的Keyboard.KeyPress()
。他们都没有抛出异常(好SendKeys.Send()
,但这是预期的),但他们都没有发送任何东西。
我试图发送信件,但没有任何反应。我将包括代码片段,看看我是否正在做一些真正密集的事情,但我担心它是一个Win10隔离的东西。有没有人幸运在Win10中在他们自己的应用程序之外发送击键呢?
的SendKeys:
public void DoItDamnYou()
{
SendKeys.SendWait("C");
MessageBox.Show("Press SHOULD have happened");
}
InputSimulator
public void DoItDamnYouNow()
{
InputSimulator input = new InputSimulator();
input.Keyboard.KeyPress(WindowsInput.Native.VirtualKeyCode.VK_D);
MessageBox.Show("Now we are in the wrapper.");
}
如果有人有任何想法,我会非常感谢他们。
由于
答案 0 :(得分:1)
似乎在Windows 10中禁用了Sendkeys。在Windows 8.1中,在注册表中丢弃UAC我可以像往常一样使用SendKeys到Windows计算器。在Windows 10中,在重试计算器中禁用UAC根本不会启动。启用UAC计算器启动,但不接受任何Sendkeys命令,但是接受直接从键盘发出的Ctrl + V和Ctrl + C(读取并复制到剪贴板)。