Windows 集成和权限
Screph 可与屏幕、全局按键和多个输入后端配合使用。此页面将普通应用程序行为与修改 Windows 或外部设备的操作分开。
2. 当 UAC 出现时
普通设置、标注、CV 和项目保存以当前用户的权限运行。安装 FakerInput 虚拟 HID 时,Screph 通过 Windows runas 显式请求提升。当所选目录或操作需要时,安装程序或维护工具也可能会请求提升;这是安装程序上下文决定,而不是项目的隐藏提升。
UAC 不会将 Automation Runtime 变成沙箱。后端安装后,工作流仍然以普通 Screph 进程权限运行,并且可以生成输入。
3. FakerInput 虚拟 HID
第一次选择FakerInput会立即开始后端准备。在提升之前,Screph 验证捆绑的 MSI 的确切 SHA256、有效的 Authenticode 签名和预期签名者。然后,它使用一个 UAC 请求运行 msiexec /i … /qn /norestart,安装系统虚拟 HID 键盘和鼠标驱动程序。
- 取消 UAC 或验证失败会恢复之前的模式并显示错误。
- MSI 代码
1641/3010 或未就绪的设备堆栈意味着可能需要手动重启 Windows 必需; Screph 不会自行重启系统。
- 驱动程序是系统范围的,而不是项目范围的。当不再需要后端时,通过已安装的软件包或 Windows 工具将其删除。
4. Arduino Leonardo 固件
Flash Arduino 按钮不是连接测试。 Screph 将兼容的 Leonardo/ATmega32U4 移动到其引导加载程序中(通过 HID 命令或 1200 波特率草图端口重置),等待新 COM 端口最多 10 秒,然后运行选定的 avrdude.exe 以写入选定的内容.hex 到闪存。
刷新会更改主板的行为和 USB 标识。使用与所选 HID 或旧配置文件匹配的固件,并关闭 Arduino IDE 或占用 COM 端口的其他程序。故障或中断可能需要再次进入引导加载程序并恢复固件。该操作本身不需要 UAC,但它会修改外部设备。
5. Windows 鼠标设置
兼容 Arduino 的运行时读取指针速度、加速度、阈值、对齐、轨迹和交换按钮,以诊断不准确的相对 HID 移动。正常的运行时行为仅读取这些设置并警告风险。
单独的 --apply-recommended CLI 命令显式修改当前用户的配置文件:它将速度设置为 10,禁用加速/阈值和对齐,保留设置并广播系统更改。 Screph 不会静默运行此命令或自动恢复以前的值,因此请先记录它们。
6. 全局热键和挂钩
托盘进程通过keyboard库注册全局组合:捕获Ctrl+Alt+S,设置F2,记录/暂停 Ctrl+Alt+R 并交替暂停 Ctrl+Alt+P。它们不会抑制正常的按键处理;与其他应用程序的冲突可能会导致失败或重复行为。正常托盘关闭期间注册将被删除。
主设置窗口中的 capture-hotkey 字段存储 tray.hotkey,但当前托盘既不会在启动时读取它,也不会接收实时更新。托盘菜单中的单独热键对话框更改当前进程的组合,但不会在下次启动时保留它。
动作序列捕获仅在记录用户操作时安装低级 Windows 鼠标和键盘挂钩。这是操作跟踪的本地输入观察,本身不会将事件上传到网络。
7. 托盘设置、自动启动和防火墙
当前边界:Tray 设置页面四个字段中的,运行时仅消耗关闭应用程序时的窗口关闭。 tray.autostart、tray.hotkey 和 tray.save_dir 已存储,但当前不读取托盘。它不创建 Windows 运行条目、启动快捷方式或计划任务,以捕获热键 Ctrl+Alt+S 启动,并传递自己的ScrephData/automation_runtime/project/autosave 目录到 Selector。
普通桌面运行时和当前 QtIFW 软件包脚本也不包含 Windows 防火墙规则创建。本地环回监听器记录在 架构指南 中;侦听器的存在并不意味着 Screph 添加了防火墙例外。
8. 更新和进程关闭
自动启动检查仅获取 Updates.xml 元数据。用户确认后开始安装。 Screph 检查未保存的 Selector 项目,停止录制,保存设置并尝试关闭 Screph Code;然后它会关闭窗口并在大约两秒后安排单独的维护工具。
Screph 推出没有自带的维护工具runas; Windows 或安装人员可能会根据安装和所选操作要求抬高。拒绝 UAC 或关闭维护工具会使更新不完整,并且不会导致 Screph 绕过权限。