-1

如何模拟按“%”和“;” 钥匙

string a2 = ";:%1467";
byte[] bb = Encoding.ASCII.GetBytes(a2);

foreach (byte b in bb)
{
   InputWorkflow.SendKeyPress((ushort)b);
}

输入工作流程: http ://pastebin.com/e9Hg24kD

4

1 回答 1

3

为什么你的课不工作

您滥用了该类中描述的方法;您还必须将键盘扫描代码传递给该InputWorkFlow.SendKeyPress(ushort keycode); 方法。它不接受 ascii 字节。

使用什么:

使用它以您想要的方式工作的SendKeys类:

string a2 = ";:%1467";
byte[] bb = Encoding.ASCII.GetBytes(a2);

foreach (byte b in bb)
{
   SendKeys.Send(b);
}

如果您需要等待处理每个密钥,请使用 SendWait 而不是 Send

foreach (byte b in bb)
{
   SendKeys.SendWait(b);
}

从 Windows Vista 上的 .NET 3.0 开始,您需要在 app.config 中添加以下内容:

<appSettings>
<add key="SendKeys" value="SendInput"/>
</appSettings>
于 2013-07-09T13:10:40.480 回答