根據此question,我嘗試在我的WPF應用程序中使用Windows鍵。但是,它不起作用!這裏是我的代碼如何在WPF應用程序中使用Windows鍵
case "My Computer":
DeviceSpeak.Speak("Opening My Computer");
SendKeys.SendWait("{Key.LWin}E");
break;
我的問題是如何在C#中使用Windows鍵。我想打開我的電腦(WindwosKey + E)。
根據此question,我嘗試在我的WPF應用程序中使用Windows鍵。但是,它不起作用!這裏是我的代碼如何在WPF應用程序中使用Windows鍵
case "My Computer":
DeviceSpeak.Speak("Opening My Computer");
SendKeys.SendWait("{Key.LWin}E");
break;
我的問題是如何在C#中使用Windows鍵。我想打開我的電腦(WindwosKey + E)。
我不認爲有一種方法來模擬使用SendKeys
的按鍵WIN
。無論如何,你可以使用他們的CLSID打開特殊位置:
// open "My Computer"
System.Diagnostics.Process.Start("::{20d04fe0-3aea-1069-a2d8-08002b30309d}");
一些更多的CLSID(有些人可能無法正常工作):
Administrative Tools: {D20EA4E1-3957-11d2-A40B-0C5020524153}
All Tasks: {ED7BA470-8E54-465E-825C-99712043E01C}
Control Panel: {21EC2020-3AEA-1069-A2DD-08002b30309d}
Connections: {241D7C96-F8BF-4F85-B01F-E2B043341A4B}
Fonts: {D20EA4E1-3957-11d2-A40B-0C5020524152}
Computer: {20D04FE0-3AEA-1069-A2D8-08002B30309D}
Documents: {450D8FBA-AD25-11D0-98A8-0800361B1103}
History: {ff393560-c2a7-11cf-bff4-444553540000}
Network Places: {208d2c60-3aea-1069-a2d7-08002b30309d}
Printers and Faxes: {2227A280-3AEA-1069-A2DE-08002B30309D}
Programs Folder: {7be9d83c-a729-4d97-b5a7-1b7313c39e0a}
Recycle Bin: {645FF040-5081-101B-9F08-00AA002F954E}
Start Menu: {48e7caab-b918-4e58-a94d-505519c795dc}
Scheduled Tasks: {D6277990-4C6A-11CF-8D87-00AA0060F5BF}
您可以找到有關CLSID here和希望快速谷歌搜索更多信息幫助你很多。
請您介紹一下這個東西究竟是什麼(「:: {20d04fe0-3aea-1069-a2d8-08002b30309d}」) – user1563221 2012-07-30 16:16:43
在Windows中,特殊位置有GUID與它們關聯。如果以「::」作爲前綴,它們幾乎可以像文件名一樣使用。默認情況下,'explorer.exe'被分配來處理這些位置,所以當你指定一個帶有「::」前綴的GUID時,會啓動explorer並將GUID作爲命令行參數傳遞給它。 Explorer然後打開相關的特殊位置。這些GUID值是硬編碼的,你可以在MSDN上找到它們,或使用註冊表編輯器。 – max 2012-07-30 16:31:34
謝謝你的解釋:-) – user1563221 2012-07-30 17:01:09