
所以我有兩個腳本shell:startup
。一個是一堆熱鍵,當我按下 ctrl+c/a/s/etc 時可以執行各種操作。另一個是在啟動時運行一次,僅此而已。
問題是啟動腳本不起作用。通電後沒有任何反應。
如果我手動運行該腳本,它會按預期工作。我嘗試添加睡眠,因為我認為它可能在加載一些必需的內容之前運行,但仍然沒有運氣,即使有 10 分鐘的延遲。該腳本從不執行任何操作,也從不顯示在工作列中。
問題是什麼?
如果需要,我可以提供腳本,但由於它看起來根本沒有加載,我認為這不是編碼問題。
答案1
不確定您是否在 Windows 10 之前的任何版本中運行此程序,但當我從 Windows 7 升級時,我發現我的一些 AutoHotKey 腳本在加載時停止工作。我終於弄清楚這是因為他們現在需要管理員權限(我認為他們在Win7中不需要它們),但是Win10阻止了shell:startup
和shell:common startup
位置中的項目以管理員身份運行。
我的解決方案有點複雜,但效果很好。基本上,我將腳本留在正常(非啟動)位置,例如,C:\Users\xyz\Documents
然後在同一位置建立腳本的捷徑。然後,您可以將快捷方式的屬性設定為以管理員身分執行。最後,在該shell:startup
位置,我創建了一個批次文件,它將自動運行並調用快捷方式:
start "MyScript" /D "C:\Users\xyz\Documents\" /B MyScript.ahk.lnk
答案2
我在win10中也遇到了同樣的問題,解決方案是直接編輯啟動註冊表。
- 跑步登錄編輯器
- 瀏覽到 計算機\HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Run
- 添新字串值
- 為了價值數據, 輸入 .ahk 檔案的路徑
就是這樣。
答案3
我找到了另一個解決方案,它可能看起來比以前更好。
當我開始使用 AHK 時,我.ahk
在一個資料夾中建立了所有檔案。然而,我想,每個人都這樣做。在這種情況下,使用bat 檔案運行所有這些檔案非常容易。它就像這樣:
@echo off
cd f:/hotkeys
for /f %%f in ('dir /b /s .') do start %%f
建立一個包含此類內容的檔案並將其放在啟動目錄中:Win+R
> shell:startup
.就是這樣。