autohotkey - include

#Include 和 #IncludeAgain

脚本认为包含文件的内容实际会出现在 #Include 指令的准确位置 (就好像从包含的文件中复制粘贴过来一样).

#Include FileOrDirName
#Include 
#IncludeAgain FileOrDirName

FileOrDirName

文件或目录的路径。
这里不能包含双引号、通配符和除 %A_ScriptDir%、%A_AppData%、%A_AppDataCommon% 及(在 v1.1.11+)%A_LineFile% 外的变量引用。
不能使用除分号(`;)外的其他转义序列,也不需要使用它们,因为像百分号这样的字符会被当成原义处理。

  • File: 要包含的文件名, 如果未指定绝对路径, 则假定在启动/工作目录 (除了 ahk2exe, 它会假定文件在脚本自身目录). 注意:SetWorkingDir 对 #Include 没有效果,因为在脚本开始执行前已经处理了 #Include。
  • Directory: 指定目录而不是文件来改变后续所有的 #Include 和 FileInstall 使用的工作目录. 注意:用这种方式改变工作目录不会影响脚本启动时的初始工作目录 (A_WorkingDir)。要改变初始工作目录,请在脚本的顶部使用 SetWorkingDir。

LibName

[AHK_L 57+]: 库文件或函数的名称. 例如, #include 和 #include 都会包含某个 函数库文件夹 中的 lib.ahk.

区别

  • #Include 确保仅包含 FileName 一次, 即使它遇到多次重复的包含.
  • #IncludeAgain 允许多次包含同一文件, 其他方面则和 #Include 一样.

注意

与其他 # 指令类似, 不能根据条件执行 #Include. 换句话说, 这个例子不起作用:

if x = 1
    #Include SomeFile.ahk  ; 不管 x 的值是什么此行都会执行.
    y = 2  ; 而此行属于上面的 IF, 因为 # 指令不属于 IF.

示例

#Include C:\My Documents\Scripts\Utility Subroutines.ahk
#Include %A_ScriptDir%  ; 为后续的 #Include 和 FileInstall 改变工作目录.
#Include C:\My Scripts  ; 和上面相同, 不过这里指定明确的命名目录.

你可能感兴趣的:(autohotkey,autohotkey,每日渐进)