c 鉤子遮蔽鍵盤快捷鍵

2021-06-27 17:27:08 字數 2312 閱讀 8137

using system;

using system.collections.generic;

using system.componentmodel;

using system.data;

using system.drawing;

using system.linq;

using system.text;

using system.windows.forms;

namespace hook_demo

void form1_formclosing(object sender, formclosingeventargs e)

private void buttonexit_click(object sender, eventargs e)

}}cs

* 呼叫:

* hook hook = new hook();

* hook.start();//安裝鉤子

* hook.close();//解除安裝鉤子

* 如果需要遮蔽鍵盤,請在keyboardhookproc方法中新增處理

** 時 間:2010/7/27 15:56:05

* * 備註:呼叫此類必須已管理員身份執行,否則沒有許可權寫入登錄檔

* 判斷是否是管理員**:(isadministrator如果為true為系統管理員,false不是管理員)

* mydomain.setprincipalpolicy(principalpolicy.windowsprincipal);

* windowsprincipal myprincipal = (windowsprincipal)thread.currentprincipal;

* bool isadministrator = myprincipal.isinrole(windowsbuiltinrole.administrator);

*/using system;

using system.collections.generic;

using system.text;

using system.runtime.interopservices;

using system.diagnostics;

using system.windows.forms;

using system.io;

using microsoft.win32;

namespace win32hook

[dllimport("user32.dll")]

public static extern int setwindowshookex(int idhook, hookproc lpfn, intptr hinstance, int threadid);

[dllimport("user32.dll", charset = charset.auto, callingconvention = callingconvention.stdcall)]

public static extern bool unhookwindowshookex(int idhook);

[dllimport("user32.dll")]

public static extern int callnexthookex(int idhook, int ncode, int wparam, intptr lparam);

[dllimport("kernel32.dll")]

public static extern intptr getmodulehandle(string name);

public void start()}}

public void close()

//如果去掉鉤子失敗.

//if (!retkeyboard) throw new exception("unhookwindowshookex failed.");

registrykey key = registry.currentuser.opensubkey(@"software\microsoft\windows\currentversion\policies\system", true);

if (key != null)

}public static int keyboardhookproc(int ncode, int wparam, intptr lparam)

return callnexthookex(hhook, ncode, wparam, lparam);

}#region idisposable 成員

public void dispose()

#endregion

}}

遮蔽vim快捷鍵

helloworld c vim 不分大小寫查詢 雖然號稱使用 vim 多年,但是實際上一直沒有仔細研究過,平常用的也就是 vim 的基本快捷鍵而已,雖然經常寫 rails 但是除了自己定義了乙個在 erb 檔案中輸入 的快捷鍵之外,就沒有任何其他配置了,外掛程式也只是偶爾用用 nerdcommen...

鍵盤快捷鍵

ctrl組合鍵 ctrl a 全選 ctrl b 整理 收藏夾 ctrl c 複製 ctrl d 刪除 新增收藏 在word中是修改選定字元格式,在ie及傲遊中是儲存為收藏 ctrl e 搜尋助理 在word中是段落居中 ctrl f 查詢 ctrl g 在word中是定位 ctrl h 歷史記錄 ...

lenovo鍵盤快捷鍵

聯想thinkpad e420的fn熱鍵和f幾的功能是與其他筆記本相反的。就是說,如果不按著fn,在那幾個功能鍵,實現的是屬性設定的功能,比如直接按下f1鍵是靜音,f2鍵是音量降低,f3是音量增加等等。如果按下fn f1鍵,則開啟的是f1的功能,也就是系統幫助功能。聯想thinkpad e420快捷...