#SingleInstance

决定当脚本已经运行时是否允许它再次运行.

#SingleInstance ForceIgnorePromptOff

参数

ForceIgnorePromptOff

如果省略此参数, 则默认为 Prompt. 要更改此行为, 请指定以下单词之一:

Force: 跳过对话框并自动替换旧实例, 效果类似于 Reload 命令.

Ignore: 跳过对话框并让旧实例继续运行. 换句话说, 试图启动已经运行的脚本会被忽略.

Prompt: 显示对话框询问是否让旧实例继续运行还是替换为新实例. 如果不使用此指令, 这是默认行为.

Off: 允许一个脚本同时运行多个实例.

备注

包含热键, 热字串, #Persistent, OnMessage()Gui 的脚本默认是单实例的(重复运行时会显示对话框与提示). 而其他脚本默认允许多个实例. 使用前面描述的方法可以禁用或修改这种行为.

当使用以下命令行开关时, 该指令将被忽略: /force /f /restart /r

和其他指令一样, #SingleInstance 不能有条件地执行.

限制

脚本以前的实例是通过搜索带有默认标题主窗口来识别的. 因此, 在下列情况下, 可能找不到该脚本的先前实例:

最多只能检测到一个先前的实例, 并向其发送消息要求其关闭. 因此, 以下的额外限制也适用:

如果脚本的多个实例同时启动, 它们可能无法检测到彼此, 或者都针对同一个前一个实例. 这将导致脚本的多个实例启动.

Reload, #Persistent

示例

跳过对话框, 自动替换旧实例.

#SingleInstance force