AutoHotKey有哪些好玩的應用?

RT。

好玩有好多種解釋:僅舉一例:運行這個程序發現,哇,ahk還能幹這個,挺好玩的。


「好玩」的含義不好界定,所以我按我的理解試著回答,歡迎交流。這個算好玩嗎?

代碼如下:

Table := ""

Loop, 9
{
Table .= SubStr(" " Row := A_Index, -2) " |"
Loop, 9
Table .= SubStr(" " (A_Index &<= Row ? A_Index * Row : ""), -3) Table .= "`n" } Table .= "----+" Loop, 36 Table .= "-" Table .= "`n" Table .= " x |" Loop, 9 Table .= SubStr(" " A_Index, -3) Table .= "`n" MsgBox, 0, 九九乘法表, % Table

更多好玩有趣的應用請參閱我在專欄中的推薦:【即用】實用 AutoHotkey 腳本推薦

其中許多都很有趣。


AutoHotKey這個神器知道很久了一直沒下決心學, 後來試了下, 初級應用還是很簡單的, 這裡分享下.

目前只做了五個功能, 後續添加ing...5個功能分別是:

1. PrintScreen鍵改為QQ屏幕截圖;

2. ScrollLock鍵改為切換耳機和音箱作為音頻播放設備(其實就是切換前兩個可用播放設備);

3. Pause鍵改為系統休眠;

4. CapsLock鍵改為Win10的任務預覽/桌面切換(因為輸入大寫一般都用shift, 大寫鎖很少用);

5. 最重要的, 把滑鼠側鍵改成複製粘貼.

代碼如下, 伸手黨可以下載安裝AutoHotKey, 在桌面右鍵新建AutoHotKey Script, 右鍵這個文件選Edit Script, 然後把代碼貼進去保存運行就ok了.

if not A_IsAdmin
{
Run *RunAs "%A_ScriptFullPath%" ; 需要 v1.0.92.01+
ExitApp
}
audiodevice := 0

PrintScreen:: Send ^!a
ScrollLock::
Run, %ComSpec% /c rundll32.exe shell32.dll`,Control_RunDLL mmsys.cpl`,`,0
WinWait, 聲音
WinWaitActive, 聲音
if audiodevice = 0
{
Send {Down 2}!s{Enter}
audiodevice := 1
}
else
{
Send {Down}!s{Enter}
audiodevice := 0
}
return
Pause:: Run, %ComSpec% /c rundll32.exe powrprof.dll`,SetSuspendState 0`,1`,0
CapsLock:: Send #{Tab}
XButton1:: Send ^v
XButton2:: Send ^c

最後寫些遇到的小坑, 分享些心得:

1. 運行cmd命令時, 如果命令中有逗號和百分號, 需要用`這個符號進行轉義;

2. 變數直接賦值使用就好了, 是動態變數. 靜態和全局變數單獨去看文檔吧;

3. 條件循環等代碼塊都是用花括弧{}, 大部分程序員應該都熟悉;

4. 如果你的某個窗口需要管理員許可權, 那麼只有添加以下代碼才能在這個窗口裡操作;

if not A_IsAdmin
{
Run *RunAs "%A_ScriptFullPath%" ; 需要 v1.0.92.01+
ExitApp
}

5. 學新東西, 是需要那麼一點點時機和好心情的.


我寫了幾個,不是很好玩,但是有用。

一個,幫助自己快速切換想要的程序。Ctrl+F鎖定程序,Ctrl+Q快速切換出來(最大化),再次按Ctrl+Q快速切走(最小化)。

一個,幫助自己在用電腦的時候更加專註。Ctrl+Q鎖定程序,如foxit reader,1.5秒檢測一次,如果幹別的去了(比如瀏覽網頁),就切換回要專註的程序,然後beep一聲提醒自己要專註。

還有一個,控制計算機可以打開的時間段。比如我設置每周五的8點半到12點才能打開計算機,在這個時間段開機安然無恙,其他時間開機的話,鎖定鍵盤、滑鼠,自動關機。另外過了12點,自動關機。當然這個東西是一個系統,不光有AHK腳本這麼簡單,還涉及F8安全模式屏蔽,任務管理器屏蔽,進程隱藏,用驅動程序屏蔽系統快捷鍵,密碼儲存等等。(沒辦法,windows操作系統就是這麼操蛋。一個讓人們關注內容而不是操作系統本身的操作系統才是一個真正優秀的操作系統。windows只能說是湊活。)


輔助AU畫畫不知道算不算,可以用來記密碼或者表白之類的,效率與精準度並存,拯救手殘


好玩是不清楚啦,這個地方的小工具都是用ahk寫的,鏈接:https://www.donationcoder.com/Software/Skrommel/


有ahk寫的自動掃雷(xp系統中的遊戲)。


自己寫的方便翻自選股,在不同行情軟體中切換且生成財務報表的工具

另外嘗試過autohotkey_h 的DLL版,autohotkey的DLL不可重入,只能全局初始化一次。本來autohotkey.exe執行不同的腳本也是單獨開啟一個進程。後來改用L版的源碼,加入了腳本加密功能,編譯了個精簡版的exe。集成在其他軟體中做輔助功能還不錯。另外AHK做 widget 類應用程序不錯,gdi+單元方便做一個層窗口。可以創建一個屏幕大小的窗口,根據定時器來繪製動畫窗口,再把C++的 tween 函數(補間動畫)移植一下,做一個可響應的交互界面也是不錯。另外還嘗試過把duilib的窗口導出dll給ahk使,界面效果大大增強。


推薦閱讀:

win10系統ntoskrnl.exe佔用大量內存如何解決?
假設 Windows 和 Office 開始免費,微軟會怎樣?
為什麼 Windows 在刪除正在使用的文件時會提示「文件已在 XX 中打開」並拒絕刪除,而安卓不會?
Windows 8 的使用體驗如何?是否值得從 Windows 7 升級?

TAG:MicrosoftWindows | 效率 | 腳本 | 腳本語言 | AutoHotkey |