跳转至

title: 打开 description: 打开文件、程序、注册表项或协议链接,可等待并取回 window: 窗口目标。


打开

类型 ID:event.simple_open。添加路径:Shift+A → 施工中 → 打开。

用途

用一行目标打开几乎任何东西,并把它弹出的窗口作为 window: 目标取回,直接连给宏、目标点击或窗口状态节点。日常“打开游戏 / 打开音乐软件再操作”用它一个节点就够。

端口

方向 端口 类型 说明
输入 0 执行 执行 到达后执行打开。
输入 1 目标 字符串 支持下面六种写法,连线优先。
输入 2 等待秒数 数值 默认 0 = 提交打开后立即返回;大于 0 时等待窗口出现或进程退出。
输出 0 执行 执行 处理完后继续。
输出 1 完成 布尔 是否成功提交打开。
输出 2 窗口 字符串 第一个窗口的目标描述 window:handle=N,可直接连宏的执行域。
输出 3 窗口列表 数组 全部命中窗口的目标描述 window:handle=N。

目标写法

写法 行为
绝对/相对路径 可执行文件直接启动;文档类(非 exe/com/脚本扩展名)走文件关联,等同双击打开。
HKLM\... 注册表键 读取默认值的程序路径(回退 InstallLocation / DisplayIcon / Path),例如 HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\App Paths\cloudmusic.exe。
.lnk 快捷方式 解析出真实目标与参数后启动。
裸程序名 等同 Win+R 输入,经系统解析启动。
steam:、ms-settings: 等协议 等同在浏览器/运行框打开该链接。

先按路径识别,再按协议识别(C:\ 是路径不是协议)。出于安全,用 cmd / powershell / python 等解释器包裹启动的命令会被拦截审查。

等待语义

  • 等待秒数为 0:提交后立即继续,不等窗口。
  • 大于 0:进程先退出就先返回退出信息;到点未退出则抓取窗口返回。程序早退但子进程还活着(商店版应用、游戏启动器)时,用剩余时间继续轮询进程树窗口。
  • 启动器经系统转手退出后,真实窗口可能挂在其他进程下(例如网易云音乐),节点会按启动映像名补一遍同名窗口兜底。

最小示例

开始 → 打开(HKLM\...\App Paths\cloudmusic.exe,等待 20 秒) → 宏

把「窗口」输出连到宏节点的「执行域」,宏就在刚打开的窗口上执行。目标串规则见目标描述。

常见错误

  • 窗口输出是空的:等待秒数设为 0 时节点不等窗口;给足启动时间,或先确认目标确实会弹窗。
  • 文档打不开:确认系统里存在对应的文件关联;协议和目标拼写错误会以失败结束,不会静默跳过。