Я только что открыл AutoHotKey, и похоже, что это сбудется. У меня два сценария .ahk, A.ahk
и B.ahk
. Я хочу называть script B из script A.
Форумы AHK странно молчат по этому вопросу, но я уверен, что это возможно.
Я только что открыл AutoHotKey, и похоже, что это сбудется. У меня два сценария .ahk, A.ahk
и B.ahk
. Я хочу называть script B из script A.
Форумы AHK странно молчат по этому вопросу, но я уверен, что это возможно.
Это директива #Include, которую вы ищете. Вы включаете ScriptB.ahk, а затем вызываете его функции, как обычно.
#include SomeFile.ahk
Использование директивы #include более распространено, но иногда вам потребуется вызывать внешний скрипт AHK. Это легко сделать с помощью команд Run или RunWait. Хотя вы можете передавать аргументы вызываемому сценарию через командную строку, вы не можете вызывать функции внутри него напрямую. Кроме того, этот подход создаст отдельный поток для вызываемого скрипта, но в этом может быть смысл.
Что действительно помогло, так это сочетание предыдущих ответов и немного посторонних знаний. Мне нужен был сценарий, который вызывал бы более 1 сценария, и поскольку мои файлы находились в разных папках, я обнаружил, что мне нужно указать полный путь к файлам (я уверен, что это можно сократить, но этого было достаточно для меня в эта точка). Я также не хотел, чтобы все различные вызываемые скрипты появлялись в трее панели задач, поэтому я добавил оператор ExitApp в конце. Итак, мой "обобщенный" код был следующим. Надеюсь, это поможет другому человеку.
#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
'''