AutoHotkey - 獻給懶惰的程式設計人員

 

AutoHotkey - 獻給懶惰的程式設計人員

 

是否厭煩了老是在電腦上重複執行繁雜又一模一樣的工作呢?

 

每次開啟電腦都要檢查email、開啟KKBox、開啟固定網頁來瀏覽新聞、將MSN設定為『忙碌』...

 

每次都要重複輸入相同的地址、電話以及虛情假意的問候...

 

希望遊戲能自動開啟無敵的外掛、希望遊戲人物能自動練功...

 

話說『懶,是進步的原動力』,現在誠摯介紹這款自動化開放原始碼的終極武器,AutoHotkey!

 

從AutoHotkey的正式網頁下載安裝後,第一次執行將會自動產生一份Script。(預設路徑在:『...My Documents/AutoHotkey.ahk』)。

 

其中包含一個最簡單的範例:

 

#z::Run www.autohotkey.com

 

『#』:表示Windows的『Windows』按鍵

 

『z』:就是鍵盤上的"z"

 

『Run』:表示『執行』接下來的命令

 

『www.autohotkey.com』:表示要開啟這個網址

 

此時,在任何狀況下按下『windows+z』兩個按鍵就可以開啟連到AutoHotkey的網頁。

 

這是自動化的第一個範例,藉由這個範例開始,程式設計師的手就開始癢起來了嘍~

 

接著開始下一個範例:

 

^!n::

IfWinExist 未命名 - 記事本 

WinActivate

else

Run Notepad

return

 

這次是當按下『Alt+Ctrl+N』時(^表示Ctrl; !表示Alt),將打開記事本(Run Notepad),要是已經有個視窗名稱為『未命名 - 記事本』存在時(IfWinExist),則將此視窗設定為作用中的視窗(WinActivate)。簡單吧?

 

什麼?打開記事本只要『從開始/所有程式/附屬應用程式/記事本』來開啟就好?什麼?已經有捷徑,點兩下就好?恩。。狗就是懶,寧願鍵盤上按下三個按鍵,讓狗自己能多執行一次Sleep 1500的時間~

 

好吧!狗承認看到這個軟體第一個想做的功能就是:打開電腦後,當我輸入指令,就能讓電腦自動執行打開email、打開KKBox、打開加密的文件、打開五個常要瀏覽的網址...等等,這些動作總是一樣的,總是要做一次,而且要花上一連串選擇、點選的無聊動作。因此,現在就能請AutoHotkey來幫我自動執行嘍!

 

AutoHotkey的特異功能,不止在可以模擬滑鼠、鍵盤乃至於遊戲控制器的所有訊息及動作,還有視窗GUI的設計功能,更能針對Windows本身的功能,以及簡單的API來完成,例如,關機、重新開啟電腦、登出、音量控制、...等等,看了說明,似乎還有類似WinAPI中的SendMessage的功能呢!只要在Windows中,好好設計一下,將可以讓電腦變的更個人化、更聰明、更服從、更女僕(!?)~

 

此外,從正式網頁下載下來的軟體安裝後,其中還包含兩個好用的軟體:

 

1.AutoScriptWriter.exe:用來錄下想要的滑鼠、鍵盤動作,自動產生程式碼,可以複製貼上在自己的ahk中。

 

2. Ahk2Exe.exe:能夠將選定的ahk轉為執行檔,到另一台沒有安裝的AutoHotkey的電腦上,執行自動化的動作。

 

 

 

在此附上一個自己使用的腳本,提供有興趣的人參考。在此聲明,此腳本非適合所有的電腦,請看過程式碼後再決定是否要執行測試!

 

此範例分別由五個腳本所組成,每個腳本負責不同的功能(functions)這樣未來也比較好管理。其功能如下:

 

 

1. 『'+'+space』:開啟10秒的命令輸入視窗,可輸入『指令』來執行動作。

    其中指令包括:

    "email":開啟收信軟體

    "kk":開啟KKBox

    "Bio4":開啟惡靈古堡4的遊戲,並且執行無敵的外掛軟體

    "ND":開啟遊戲"Nancy Drew:Danger by Design"

    "bye" or "881":限時1分鐘後關機,可以按[Space]取消關機或[Enter]直接關機

    "bye!" or "881!":限時1分鐘後強迫關機(資料有可能遺失),可以按[Space]取消關機或[Enter]直接關機

    "reboot" or "re":限時1分鐘後重新開機,可以按[Space]取消關機或[Enter]直接關機

    "reboot!" or "re!":限時1分鐘後強迫重新開機(資料有可能遺失),可以按[Space]取消關機或[Enter]直接關機

    "www":連續開啟五個常用的網頁

    "go":自動開啟KKBOX、五個常用的網頁,並開啟收信軟體

    (以下為編輯AutoHotkey腳本的指令)

    "rec":開啟AutoScriptWriter軟體來錄下動作

    "test":測試執行功能,目前為電腦PC喇叭『嗶』一聲

    "/h":開啟AutoHotkey的說明檔

    "/ahk":開啟『我的文件』,方便編輯ahk

    "/f2":讓AutoHotkey重新載入修改過的腳本,以方便驗證功能

2.『Winows+z』:打開AutoHotKey的正式網頁(預設範例)

3.『Alt+Ctrl+n』:打開記事本,要是已經存在,則設為作用中的視窗

4.『'+test+space』:複製一串網址到剪貼簿並貼上。此為驗證可以輸出中文字串的方法

    此範例從『簡睿隨筆』中複製來的( http://blog.xuite.net/emisjerry/tech/174897)

5.『滑鼠左鍵按住+r』:讓AutoHotkey重新載入修改過的腳本,以方便驗證功能 

    此範例從『簡睿隨筆』中複製來的( http://blog.xuite.net/emisjerry/tech/6370531)

6.『Alt+Ctrl+方向鍵左』:減小主音量

7.『Alt+Ctrl+方向鍵右』:增大主音量 

8.『Alt+方向鍵左』:減小音效卡音量

9.『Alt+方向鍵右』:增大因小卡音量 

10.『Alt+Ctrl+方向鍵下』:使主音量靜音

11.『Ctrl+滑鼠滾輪上』:增大主音量

12.『Ctrl+滑鼠滾輪下』:減小主音量

13.『Shift+滑鼠滾輪上』:增大音效卡音量

14.『Shift+滑鼠滾輪下』:減小音效卡音量

15.『Ctrl+滑鼠中鍵』:使主音量靜音

16.『Shift+滑鼠中鍵』:使主音量靜音

 

17.『ESC+ESC』:關閉當前應用程式。

 

此範例從『簡睿隨筆』中複製來的( http://blog.xuite.net/emisjerry/tech/6370531)

 

 

 

此軟體能做到的功能相當強大,且help文件作得相當完整,由help中的範例可以看出,能達到相當複雜且聰明的功能。這部分還需要日後慢慢來研究。

 

有興趣的人歡迎一起討論吧!

 

 

 

參考資料:

 

1. 關於按鍵代號說明,請查閱AutoHotkey help中的『Send / SendRaw / SendInput / SendPlay / SendEvent: Send Keys & Clicks』一節

 

2. Wiki of AutoHotkey: http://en.wikipedia.org/wiki/AutoHotkey

 

3. 簡睿隨筆科技篇

 

4. AutoHotkey正式網頁: http://www.autohotkey.com/

 

你可能感兴趣的:(加密,windows,工作,api,email,winapi)