AutoHotKey: Calling one script from another script

前端 未结 3 961
臣服心动
臣服心动 2021-01-11 13:44

I just discovered AutoHotKey and it seems like a dream come true. I have two .ahk scripts, A.ahk and B.ahk. I want to call script B from within scr

相关标签:
3条回答
  • 2021-01-11 14:04

    It's the #Include directive you are looking for. You include ScriptB.ahk, then call its functions like you normally would.

    #include SomeFile.ahk
    

    http://www.autohotkey.com/docs/commands/_Include.htm

    0 讨论(0)
  • 2021-01-11 14:06

    Using an #include directive is more common, but occasionally you will need to call an external AHK script. This is easily accomplished using the Run or RunWait commands. While you can pass arguments to the called script through the command line you cannot call functions within it directly. Also, this approach will create a separate thread for the called script, but that may be the point.

    0 讨论(0)
  • 2021-01-11 14:19

    What really helped was a combination of the previous answers and a little bit of outside knowledge. I needed a script that would call more than 1 script, and since my files were in different folders, I found that I needed to specify the entire path of the files (I am sure this could be shortened but this was good enough for me at this point). I also didn't want all the different scripts that were being called to appear in the tray of the taskbar so I added an ExitApp statement at the end. So my 'generalized' code was follows. Hopefully it can help another person.

    #SingleInstance, Force
    
    ; HotKeys
    #Include C:\Users\username\path1\Arrows.ahk
    #Include C:\Users\username\path1\HomeEndModifiers.ahk
    
    ; SoundKeys
    #Include C:\Users\username\path2\VolumeAdjustment.ahk
    
    ; Opening Programs
    #Include C:\Users\username\path3\OpeningPrograms.ahk
    
    ExitApp
    ```
    
    0 讨论(0)
提交回复
热议问题