日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 编程语言 > asp.net >内容正文

asp.net

.NET下如何拦截鼠标、键盘消息?Win32NET来帮你

發(fā)布時間:2023/12/4 asp.net 34 豆豆
生活随笔 收集整理的這篇文章主要介紹了 .NET下如何拦截鼠标、键盘消息?Win32NET来帮你 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

Win32NET是一個Win32API的.NET下封裝的類庫,包含:

1: 常用win32的API的net封裝

2:鼠標(biāo)、鍵盤、熱鍵hook鉤子模塊,

3:模擬鍵盤輸入文字(支持各種字符文字、不同語言的文字)、模擬鼠標(biāo)點擊移動滾動等操作

4.系統(tǒng)硬件信息查詢

如何使用該Win32Net庫呢?可以在nuget包管理搜索Win32Net,

Install-Package Win32Net -Version 1.2.0

或者直接添加引用,

<PackageReference Include="Win32Net" Version="1.2.0" /

如何使用鼠標(biāo)鉤子:

首先實例化一個鼠標(biāo)鉤子對象,然后定義鼠標(biāo)事件回調(diào)方法,啟動監(jiān)聽即可。當(dāng)不需要繼續(xù)監(jiān)聽鼠標(biāo)信息,則可以取消監(jiān)聽。

win32.Hooks.MouseHook mouseHook = new Hooks.MouseHook();//實例化鼠標(biāo)鉤子對象 mouseHook.LeftDown += MouseHook_LeftDown;//鼠標(biāo)左鍵按下的事件監(jiān)聽回調(diào)方法 mouseHook.Start();//開始監(jiān)聽 mouseHook.Stop();//停止監(jiān)聽

如何使用鍵盤鉤子:

鍵盤鉤子與鼠標(biāo)鉤子使用類似,首先實例化一個鍵盤鉤子對象,然后定義鍵盤事件回調(diào)方法,啟動監(jiān)聽即可。當(dāng)不需要繼續(xù)監(jiān)聽鍵盤信息,則可以取消監(jiān)聽。

Win32.Hooks.KeyboardHook keyboardHook = new Win32.Hooks.KeyboardHook();keyboardHook.OnKeyUp?+=?KeyboardHook_OnKeyUp;keyboardHook.Start();keyboardHook.Stop();

如何注冊全局快捷鍵

//WPF 窗口句柄 //IntPtr hwnd = new WindowInteropHelper(WPFWindow對象).Handle; //winform 窗口句柄IntPtr hwnd = this.Handle;//實例化熱鍵對象,需要一個句柄,用于接收消息Win32.Hooks.SystemHotKey systemHotKey = new Win32.Hooks.SystemHotKey(hwnd); //熱鍵id,要求唯一int hotKeyId = 5000; //注冊Alt+Q快捷鍵 systemHotKey.AddHotKey(hotKeyId, Win32.KeyModifiers.Alt, Keys.Q,() =>{MessageBox.Show("你按了Alt+Q快捷鍵");} ); //注冊ESC快捷鍵systemHotKey.AddHotKey(hotKeyId + 1, Win32.KeyModifiers.None, Keys.Escape,() =>{this.Close();});

如何獲取系統(tǒng)硬件信息

SystemInfo systemInfo = new SystemInfo(); richTextBox1.AppendText("操作系統(tǒng):" + systemInfo.operatingSystem.Caption + "\n"); richTextBox1.AppendText("系統(tǒng)ID:" + systemInfo.operatingSystem.SerialNumber + "\n"); richTextBox1.AppendText("操作系統(tǒng)平臺:" + systemInfo.operatingSystem.OSLevel + "\n"); richTextBox1.AppendText("系統(tǒng)安裝時間:" + systemInfo.operatingSystem.InstallDate + "\n"); richTextBox1.AppendText("系統(tǒng)最近啟動時間:" + systemInfo.operatingSystem.LastBootUpTime + "\n"); richTextBox1.AppendText("系統(tǒng)時間:" + systemInfo.operatingSystem.LocalDateTime + "\n"); richTextBox1.AppendText("CPU:" + systemInfo.processor.Name + "\n"); richTextBox1.AppendText("CPU廠商:" + systemInfo.processor.Manufacturer + "\n"); richTextBox1.AppendText("CPU序列號:" + systemInfo.processor.SerialNumber + "\n"); richTextBox1.AppendText("物理內(nèi)存:" + systemInfo.memory.TotalPhysicalMemory + "\n");

喜歡的小伙伴們可以關(guān)注下方公眾號

總結(jié)

以上是生活随笔為你收集整理的.NET下如何拦截鼠标、键盘消息?Win32NET来帮你的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。