运行或打开
启动一个 Windows 进程:跑 exe、打开文件或文件夹、打开网址或商店应用 URI。效果接近 Win+R「运行」。
当前模块定义
sys:run输入 15 · 输出 8 · 枚举 2
输入参数
- 路径或命令
pathText必填要运行的命令或打开的文件路径、网址、URI等。
- 参数(可选)
argText可选程序参数
- 工作目录
setWorkingDirText可选可输入 0或留空(不设置,由windows默认)、1(软件所在目录)、具体的工作目录路径。
- 窗口风格
windowStyleEnum可选设置期望的窗口风格,是否有效依赖于具体的软件。
4 个选项普通(Normal、隐藏(Hidden、最小化(Minimized
普通(Normal默认0隐藏(Hidden1最小化(Minimized2最大化(Maximized3 - 以管理员身份运行
runasBoolean可选以管理员身份运行软件或命令。
- 等待启动完成
waitInputIdleBoolean可选等待进程完成后了初始化,可以接受用户输入。
- 等待进程结束
waitExitBoolean可选等待进程结束后再执行后续操作步骤。
- 如果程序已运行则尝试激活窗口
activateWindowIfRunningBoolean可选如果程序已经在运行,则尝试激活其窗口。
- 激活窗口快捷键
activateWindowHotkeyText可选对于支持快捷键激活窗口的软件,设置该快捷键。支持"模拟按键B"语法。
- 备用路径
alternativePathText可选文件在多个电脑上路径不同时,使用备用路径填写其他电脑上的文件路径。
- 用户名
usernameText可选使用指定的用户运行
- 密码
passwordText可选用户名对应的密码
- 控制台输出编码
outputEncodingEnum必填控制台输出编码。如果输出遇到乱码,尝试修改此选项。
UTF8utf8OEM默认oem - 环境变量
envVariablesText可选为应用程序设置特定的环境变量值。每行一个,格式"变量名=值",如"CONFIG_FILE=d:\config.json"
- 失败后停止
stopIfFailBoolean可选失败后是否停止动作
输出参数
- 是否成功
isSuccessBoolean操作是否成功
- PID
pidInteger进程ID
- 主窗口句柄
mainWinHandleInteger进程的主窗口句柄
- 主窗口标题
mainWinTitleText - 控制台输出
stdoutText慎用!仅用于控制台程序,会自动等待进程结束。输出stdout,为空时输出stderr。
- stdout输出
stdoutOnlyText慎用!捕获控制台程序的stdout输出,会自动等待进程结束
- stderr输出
stderrText慎用!捕获控制台程序的stderr输出,会自动等待进程结束
- 退出代码
exitCodeInteger进程的ExitCode,会自动等待进程结束。
概述
常见用途:
- 启动 exe,按需带命令行参数
- 用关联程序打开文件
- 打开文件夹
- 打开网址,或 Windows 商店应用 URI(如
ms-settings:) - 执行
cmd、ping、control这类系统命令
运行或打开
可运行的命令和 Win10 URI 可参考论坛:可以运行的命令。只打开网页时,也可以用 打开网址。
参数说明
路径或命令:要启动或打开的目标,例如:
- Windows 命令:
cmd、ping、control - PATH 里的程序名(带不带
.exe都行),或 exe 的完整路径 - 文件完整路径,如
E:\Download\协议.doc - 网址,如
https://getquicker.net - 商店应用 URI,如
ms-settings:
点输入框右侧 … 可以从已安装软件、文件、文件夹里选路径(菜单以当前软件为准):
运行或打开
参数(可选):传给 exe 的命令行参数,格式取决于目标程序。路径里可能有空格时,两端加英文双引号,避免被截断。
以管理员身份运行:会弹出 Windows 的 UAC 确认。非必要不要开。
激活窗口快捷键:目标软件若支持热键唤起已有窗口,按 模拟按键B 的格式填写;可点输入框右侧键盘按钮录入。旧步骤里若误填成 false / true / 0 / 1,运行时会当成空(不当热键)。
如果程序已运行则尝试激活窗口:已有同名进程时先试着激活窗口,而不是再开一份。路径或命令 要写成 exe 的完整路径,才能靠它判断进程。依赖目标软件;多进程、一进程多窗口、缩到托盘时通常不行。
备用路径:同一动作在不同电脑上 exe 路径不一样时,每行写一条备用完整路径。
工作目录:进程的当前目录。留空或 0 用系统默认;1 用 exe 所在目录(此时路径必须是完整路径);也可以写成具体目录。例如执行 cmd 时填 d:\,窗口会进到该盘。
窗口风格:普通、隐藏、最小化、最大化。是否生效取决于目标软件。路径若是 .lnk 快捷方式,此参数无效,请直接写 exe 完整路径。
等待启动完成:等进程初始化完、能接受输入后再继续。只对部分软件有效。要拿主窗口句柄或标题时,常常需要打开它。
等待进程结束:等进程退出后再跑后面的步骤。
用户名 / 密码:需要用本机另一个 Windows 账号启动时再填。
控制台输出编码:控制台输出乱码时,在 OEM 和 UTF8 之间换一下。
环境变量:给进程额外环境变量。每行 变量名=值,例如 CONFIG_FILE=d:\config.json。
失败后停止:启动失败时是否中止动作。默认开启。
输出
- 是否成功:是否启动成功。
- PID:进程 ID。
- 主窗口句柄 / 主窗口标题:不是每个进程都有主窗口;拿不到时打开 等待启动完成 再试。
- 控制台输出:仅控制台程序必要时再用。会自动等待进程结束;stdout 为空时改出 stderr。
- stdout输出 / stderr输出:分别捕获,同样会等待进程结束。
- 退出代码:进程 ExitCode。输出此项时会自动等待进程结束。
不要随便接控制台输出或退出代码,否则动作会卡在等进程退出。
示例动作
依次演示:记事本、打开 C:\Program Files、打开论坛帖、用记事本打开 hosts。
限制与排障
- 激活已有窗口、窗口风格都依赖目标软件,先实机试。
- 用
.lnk时窗口风格不生效。 - 接了控制台输出或退出代码,会一直等到进程结束。
- 管理员运行会出 UAC,无人值守动作容易卡在确认框。
相关链接
更新历史
- v1.0.2:增加「等待启动完成」,以及 PID、主窗口句柄、主窗口标题。
- 1.5.7:增加「失败后停止」。
- 20250120:完善文档。
更新于