C# Windows的Sendkeys开始键

C# Windows的Sendkeys开始键,c#,sendkeys,C#,Sendkeys,我试图使用Sendkeys来模拟Windowsstart键,但我尝试的选项都不起作用,有人知道怎么做吗 代码 [System.Runtime.InteropServices.DllImport("user32.dll")] private Thread thrTyping; private void startThread() { ThreadStart ts = new ThreadStart(sendKeys); thrTyp

我试图使用
Sendkeys
来模拟
Windows
start键,但我尝试的选项都不起作用,有人知道怎么做吗

代码

    [System.Runtime.InteropServices.DllImport("user32.dll")]
    private Thread thrTyping;

    private void startThread()
    {
        ThreadStart ts = new ThreadStart(sendKeys);
        thrTyping = new Thread(ts);
        thrTyping.Start();
    }

    private void sendKeys()
    {
       // TEST 1
       Thread.Sleep(5000);
       SendKeys.SendWait("(^)"+"{ESC}");           

       // TEST 2
       Thread.Sleep(5000);
       SendKeys.SendWait("{LWin}");
    }
改用:


(您要找的是0x5B-左赢键)

谢谢您的帮助@扎哈玛玛
private const int KEYEVENTF_EXTENDEDKEY = 0x1;
private const int KEYEVENTF_KEYUP = 0x2;

[DllImport("user32.dll")]
static extern void keybd_event(byte bVk, byte bScan, uint dwFlags, int dwExtraInfo);

private static void PressKey(byte keyCode)
{
    keybd_event(keyCode, 0x45, KEYEVENTF_EXTENDEDKEY, 0);
    keybd_event(keyCode, 0x45, KEYEVENTF_EXTENDEDKEY | KEYEVENTF_KEYUP, 0);
}