萬盛學電腦網

 萬盛學電腦網 >> 電腦基本常識 >> AutoHotKey讓特定用戶按鍵失效

AutoHotKey讓特定用戶按鍵失效

   每次春節假期,表弟他們都很愛使用我的電腦玩4399等網站的小游戲,由於這些人經常用力按ASDF鍵,我的鍵盤都換了好幾個了。有沒有辦法可以實現表弟登錄電腦時這幾個按鍵就失效,自己登錄卻不受影響的方法。

  【解題思路】

  之前雜志上已經有人提供了通過專用軟件解決的方法,今天我則提供另外一個思路。AutoHotKey是Windows平台下的熱鍵腳本語言,主要用於實現鍵盤、鼠標的自動按鍵功能,映射、屏蔽某些按鍵更是小菜一碟。再配合系統的任務計劃功能,就可以實現特定用戶登錄後自動屏蔽某些按鍵的效果。本方案的好處,就是不用為了某一個特定的功能專門安裝一款軟件。AutoHotKey則不同,屏蔽按鍵只是它靈活應用的一個方面而已。

  【解題方法】

  首先下載AutoHotKey,不過這裡我推薦小眾軟件網出品的“AHK懶人包”,裡面附帶了一些很好用的腳本,方便用戶學習、使用。將下載的“AutoHotKey 懶人包.7z”解壓到任意位置,運行其中的Ahk2Exe.exe待用(位於“AutoHotKey懶人包AutoHotKey中文版Compiler”目錄下)。

  接下來打開記事本,寫入如下腳本:

  #NoTrayIcon

  A::return

  S::return

  D::return

  F::return

  第1行“#NoTrayIcon”代碼可以使腳本運行後不顯示通知區域圖標,否則它將會在通知區域顯示一個綠色H的圖標。這是避免被使用電腦的人發現,從而可能中止腳本,導致我們的目的失敗。第2~5行的意思是將ASDF這四個按鍵進行映射,映射到“return”,這裡可以理解為按下這幾個按鍵後不產生任何動作。如果還想要屏蔽其他按鍵,需要按照AutoHotKey規定的按鍵名稱編寫,可以參考包內附帶的幫助文檔(在“按鍵列表”這一鏈接下)。

  點擊“文件→另存為”,將保存類型改為“所有類型(*.*)”,並在“文件名”一欄中填入“禁用ASDF.ahk”(文件名可以隨意填寫,但是擴展名必須為ahk,另外外側要用英文雙引號)。

  接下來切換到Ahk2Exe程序窗口,點擊“Source”後面的“Browse”按鈕,選擇“禁用ASDF.ahk”。再點擊“Destination”後面的“Browse”按鈕,選擇可執行腳本文件的保存位置以及文件名。比如我為了使腳本更具迷惑性,故意將生成的exe文件命名為Svchost.exe(圖1)。點擊最下方的“Convert”按鈕便可生成可執行腳本文件了。

AutoHotKey讓特定用戶按鍵失效 三聯

  小提示:

  Svchost.exe是Windows系統從動態鏈接庫(DLL)中運行的服務的通用主機進程名稱,用戶登錄系統後,往往會有多個Svchost.exe進程,普通用戶是不敢隨意結束這些進程的。

  將生成的Svchost.exe文件放到一個比較隱蔽的位置,然後切換到用戶(即切換到給“表弟”用的賬戶)。在這個賬戶下,依次打開“控制面板→管理工具→任務計劃程序”,在右邊的“操作”面板中點擊“創建基本任務”,此時會打開“創建基本任務向導”界面。向導共5步:第一步,填寫任務計劃的名稱及描述;第二步,“希望該任務何時開始”,選擇“當前用戶登錄時”;第三步,“希望該任務執行什麼操作?”,選擇“啟動程序”;第四步,點擊“浏覽”按鈕,選擇剛才生成的Svchost.exe文件;第5步,系統會顯示該任務計劃的摘要,確認無誤後,點擊“完成”按鈕。

  注銷當前用戶後再重新登錄,此時按下ASDF按鍵就不起任何作用了。當“表弟”再想玩游戲時,告知他這幾個按鍵已“壞”,他也就沒有辦法了。

  小提示:

  有經驗的用戶不需要切換賬戶,可以直接點擊“創建任務”創建任務並指定生效的用戶。

copyright © 萬盛學電腦網 all rights reserved