OK、あなたが本当に欲しいのはこれです:http: //inputsimulator.codeplex.com/
Win32 SendInput
これにより、メソッドをC#に公開するという大変な作業がすべて完了しました。これにより、Windowsキーを直接送信できます。これはテストされ、機能します。
InputSimulator.SimulateModifiedKeyStroke(VirtualKeyCode.LWIN, VirtualKeyCode.VK_E);
ただし、場合によっては、キーをアプリケーション(などALT+F4
)に具体的に送信する必要があることに注意してください。その場合は、Form
libraryメソッドを使用します。その他の場合は、一般的にOSに送信したい場合は、上記を使用してください。
年
これを参照用にここに置いておくと、すべてのオペレーティングシステムで機能するわけではなく、常に希望どおりに動作するとは限りません。これらのキーストロークをアプリに送信しようとしていることに注意してください。通常、OSはそれらを早期にインターセプトします。Windows 7およびVistaの場合、早すぎます(E
送信される前)。
SendWait("^({ESC}E)")
またSend("^({ESC}E)")
ここからの注意:http://msdn.microsoft.com/en-us/library/system.windows.forms.sendkeys.aspx
SHIFT、CTRL、およびALTの任意の組み合わせを押したまま、他のいくつかのキーを押していることを指定するには、それらのキーのコードを括弧で囲みます。たとえば、EとCを押しながらSHIFTを押し続けるように指定するには、「+(EC)」を使用します。Eを押しながらSHIFTを押し続け、続いてSHIFTを押さずにCを押し続けるように指定するには、「+EC」を使用します。
必要であると同時にESC
(たとえば)押すので、角かっこで囲む必要があることに注意してください。E