2016-08-02 149 views
-1

更新16年8月5日 - 上午12時08分: 這裏是我的視頻試圖得到這個工作:https://youtu.be/h9gAirlUGyIAutoHotKey - 如何自動發送單鍵按鍵?

所以,我想對程序啓動按一次關鍵。 這就是我,我是小白,請與我裸露:

{ 
    Send, {F11} 
} 

現在,當我啓動程序就不會發送鍵。 幫助?

感謝您的幫助,您可以提供

  • 伊恩
+0

發表一個簡單的例子,重現錯誤請。 – 2501

+0

@IanB你究竟想要什麼?當程序首次啓動時輸入一個鍵,或每次它變爲活動狀態,或者什麼? 'F11'在這方面做了什麼?這是一次性的事情嗎?例如,一些程序有一個嘮叨的屏幕,你需要解僱(通常用'enter')。然後,典型的解決方案是使用批處理文件(甚至AHK腳本)來啓動程序,然後發送密鑰。下面的答案是必須爲運行才能工作的腳本 - 它們不能自動工作。 Otoh,如果腳本作爲批處理或ahk啓動序列的一部分運行,那麼您就開始工作了。 Lmk, – PGilm

+0

OKAY,@IanB,我的一些問題在你的其他文章中得到了解答。我在那裏有一個評論,下面的答案顯示瞭如何。 – PGilm

回答

1
flag = 0 
processName := "xenia.exe" 

Loop 
{ 
    If ProcessExist(processName) 
    { 
     WinGetTitle, title, ahk_exe %processName% 
     IfWinActive, %title% 
     { 
      if flag = 0 
      { 
       Send, {F11} 
       flag = 1 
      } 
     } 
     else 
     { 
      flag = 0 
     } 
    } 
    Sleep, 1000 
} 

ProcessExist(Name) 
{ 
    Process,Exist,%Name% 
    return Errorlevel 
} 
+0

這似乎並沒有爲我做,我已經看了更多的東西,我已經結束了這個代碼:http://pastebin.com/R2Etkkc9 它的作品和一切,如果窗口是最小化它出現,並獲得F11 sendt時,當我按Numpad 0.但這並不是我想要的,我真的無法找到一種方法來使事情發生時發生。我試過循環,在啓動和其他一些事情上什麼都不做。我真的很困惑。 – IanB

+0

檢查我編輯的答案,只有當窗口處於最大化狀態時,纔會發送F11 –

+0

但是它開始顯示窗口,現在你所說的是我必須在F11發送到程序之前將其最大化,我可以完全屏蔽程序自己,然後如果我不得不去工具欄,以最大限度地發揮它。 – IanB

0

每您的其他問題,我的意見有:現在

; This code both launches and fullscreens XENIA . . . 
#Persistent 
#SingleInstance, Force 

Run, xenia.exe 
Sleep, 500 
GoSub, DoIt 
return 

numpad0:: 
GoSub, DoIt 
return 

DoIt: 
IfWinExist, ahk_class XeniaWindowClass ahk_exe xenia.exe 
{ 
    WinActivate, ahk_class XeniaWindowClass 
    #IfWinActive, ahk_class XeniaWindowClass 
    { 
     Send, {F11} 
    } 
} 
return 

,如果問題是真正關於如何使用您點擊過的文件啓動xenia,例如使用瀏覽器擴展是使其工作的方式(通過將腳本添加到註冊表中和/或將文件名和路徑傳遞到命令行中)。請再次告訴我們你想要發生的事情的細節!

+0

請看我在原帖中鏈接到我的問題的視頻,希望能幫助我嘗試做什麼 – IanB