公司 Group Policy 通常禁止普通用户通过 schtasks /Create 注册任务,
导致 xskill connect 默认路径报「拒绝访问」。
修复策略:
- install_and_start() 检测 access denied 错误(英文/中文),自动降级
- 降级方案:写 %APPDATA%\...\Startup\xskill_connect.vbs(WScript 隐藏窗口)
+ 立即 Popen 以 DETACHED_PROCESS|CREATE_NO_WINDOW detach 启动
- stop() / status() 按 daemon state 里的 method 字段区分两条路径
(schtasks 路径:/End + /Delete;startup_folder:unlink vbs + taskkill)
- daemon state 新增 method 字段("schtasks" | "startup_folder")
测试:新增3个用例覆盖降级全路径、stop 清理、中英文错误检测,
共19个 service 测试通过。
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>