資源簡介
InitSuperKeys() 安裝WINIO驅動,一般用于Form_Load事件中調用
CloseSuperKeys() 卸載WINIO驅動,一般用于Form_Closed事件中調用
KeyDown(Key) 模擬普通Key鍵按下。
KeyDownEx(Key)模擬擴展Key鍵按下。
KeyUp(Key)模擬普通Key鍵彈起。
KeyUpEx(Key)模擬擴展Key鍵彈起。
KeyPress(Key)模擬普通Key鍵按下并彈起一次。其中按下和彈起的默認時間間隔是200毫秒
KeyPress(Key,Int32)模擬普通Key鍵按下并彈起一次。其中按下和彈起的時間間隔是第二個參數,單位為毫秒。
KeyPressEx(Key)模擬擴展按鍵Key按下并彈起一次。其中按下和彈起的默認時間間隔是200毫秒,寫入擴展按鍵信息間隔時間為100毫秒
KeyPressEx(Key,Int32)模擬擴展按鍵Key按下并彈起一次。其中按下和彈起的時間間隔是第二個參數,單位為毫秒,寫入擴展按鍵信息間隔時間為100毫秒。
KeyPressEx(Key,Int32,Int32)模擬擴展按鍵Key按下并彈起一次。其中按下和彈起的時間間隔是第二個參數,單位為毫秒,寫入擴展按鍵信息間隔時間是第三個參數,單位為毫秒。
特別說明:
1、 在執行模擬按鍵之前必須先執行InitSuperKeys()進行驅動的安裝,在窗體關閉之后最好可以卸載驅動。
2、 以上方法中的參數Key為我在WinIoSys類中定義的一個枚舉,并非DONET系統的Key枚舉。
3、 普通Key是指A,B,C,Space這種標準鍵盤按鍵。而擴展按鍵是指“方向鍵”等特殊按鍵,系統在處理這種擴展鍵的時候會先有一個寫擴展按鍵信息的時間。因此沒有Ex結尾的方法都是用于標準普通按鍵的,有Ex結尾的方法是用于特殊的擴展按鍵的。其中他們都有重載,用戶可以自己設置間隔時間。至于按鍵詳細分類,請自己上Google搜索。
4、 模擬一次按鍵事件后,一定要讓程序Sleep一些毫秒,否則下一個按鍵是無法正常模擬出的。
5、 貌似USB走的是總線,和端口操作無關,因此該方法理論上不支持USB接口的鍵盤。由于大多數鼠標都是USB接口的。
6、 部分殺毒軟件會提醒用戶安裝驅動,或者將WinIo.sys報為病毒,其實這是正常現象。
代碼片段和文件信息
using?System;
using?System.Collections.Generic;
using?System.ComponentModel;
using?System.Data;
using?System.Drawing;
using?System.Text;
using?System.Windows.Forms;
using?System.Threading;
using?SuperKeys;
namespace?DEMO
{
????public?partial?class?MainForm?:?Form
????{
????????private?int?m_Second?=?4;
????????WinIoSys?m_IoSys?=?new?WinIoSys();
????????public?MainForm()
????????{
????????????InitializeComponent();
????????}
????????private?void?buttonRun_Click(object?sender?EventArgs?e)
????????{
????????????timer1.Start();
????????}
????????private?void?timer1_Tick(object?sender?EventArgs?e)
????????{
????????????m_Second--;
????????????labelSecond.Text?=?m_Second.ToString();
????????????if?(m_Second?==?0)
????????????{
????????????????m_IoSys.KeyD
?屬性????????????大小?????日期????時間???名稱
-----------?---------??----------?-----??----
?????文件???????3486??2009-04-27?22:49??DEMO\DEMO.csproj
?????文件???????1573??2009-04-27?22:47??DEMO\MainForm.cs
?????文件???????4733??2009-04-26?23:44??DEMO\MainForm.Designer.cs
?????文件???????6008??2009-04-26?23:44??DEMO\MainForm.resx
?????文件????????636??2009-04-27?22:51??DEMO\obj\Debug\DEMO.csproj.FileListAbsolute.txt
?????文件????????850??2009-04-27?22:50??DEMO\obj\Debug\DEMO.csproj.GenerateResource.Cache
?????文件???????9728??2009-04-27?22:50??DEMO\obj\Debug\DEMO.exe
?????文件????????180??2009-04-27?22:50??DEMO\obj\Debug\DEMO.MainForm.resources
?????文件??????19968??2009-04-27?22:50??DEMO\obj\Debug\DEMO.pdb
?????文件????????180??2009-04-27?22:50??DEMO\obj\Debug\DEMO.Properties.Resources.resources
?????文件???????2688??2009-04-27?22:50??DEMO\obj\Debug\ResolveAssemblyReference.cache
?????文件??????????0??2009-04-27?22:49??DEMO\obj\Release\build.force
?????文件????????554??2009-04-27?22:49??DEMO\obj\Release\DEMO.csproj.FileListAbsolute.txt
?????文件????????850??2009-04-26?23:06??DEMO\obj\Release\DEMO.csproj.GenerateResource.Cache
?????文件???????7168??2009-04-26?23:06??DEMO\obj\Release\DEMO.exe
?????文件????????180??2009-04-26?23:06??DEMO\obj\Release\DEMO.MainForm.resources
?????文件??????17920??2009-04-26?23:06??DEMO\obj\Release\DEMO.pdb
?????文件????????180??2009-04-26?23:06??DEMO\obj\Release\DEMO.Properties.Resources.resources
?????文件????????468??2009-04-26?23:05??DEMO\Program.cs
?????文件???????1361??2009-04-26?23:07??DEMO\Properties\AssemblyInfo.cs
?????文件???????2858??2009-04-26?23:05??DEMO\Properties\Resources.Designer.cs
?????文件???????5612??2009-04-26?23:05??DEMO\Properties\Resources.resx
?????文件???????1089??2009-04-26?23:05??DEMO\Properties\Settings.Designer.cs
?????文件????????249??2009-04-26?23:05??DEMO\Properties\Settings.settings
?????文件????????902??2009-04-26?23:05??DEMO.sln
????..A..H.?????19456??2009-04-27?22:51??DEMO.suo
?????文件???????1818??2009-04-27?22:49??幫助.txt
?????文件???????8704??2009-04-27?22:34??bin\SuperKeys.dll
?????文件??????49152??2002-03-02?00:22??bin\WinIo.dll
?????文件???????4944??2002-03-01?23:21??bin\WinIo.sys
............此處省略13個文件信息
- 上一篇:微信活動大轉盤安裝包以及cshtml源碼
- 下一篇:C# 獲取文件長度
評論
共有 條評論