补两个自检失败:build_exe.ps1 丢 BOM + run_agent 用了未导入的 time

全量回归只剩这两项红,都是我这几步引入的:

1. 编码审计:build_exe.ps1 缺 UTF-8 BOM
   我用 edit 工具改它时把 BOM 丢了。PowerShell 5.1 会按 GBK 读,
   里面的中文注释会变乱码。

2. Python 静态检查:run_agent.py:760 undefined name 'time'
   我在 _restart_background 里用了 time.sleep,但 run_agent.py
   模块级没有 import time(原来只有 run_silent 里局部 import)。
   补上之后顺手在注释里记一笔:pyflakes 这一关是有用的。

顺带:test_double_click_window.py 的注释里我原样写了两个
U+FFFD 替换字符当例子,被编码审计当成乱码 —— 改成用文字描述。

现在全量回归 41 个阶段全部通过。
This commit is contained in:
xmz7891
2026-10-07 21:50:00 +08:00
parent dba5e912bf
commit fc61dad0a3
56 changed files with 11 additions and 6 deletions
+1 -1
View File
@@ -1,4 +1,4 @@
# 把 Windows 被控端打包成「多文件 EXE」(PyInstaller --onedir)
# 把 Windows 被控端打包成「多文件 EXE」(PyInstaller --onedir)
# 用法: powershell -ExecutionPolicy Bypass -File windows\build_exe.ps1
#
# 产物: dist_exe\ykxmz\
+5
View File
@@ -746,6 +746,11 @@ def _restart_background(store) -> None:
用户会以为设置没生效。
"""
import subprocess
import time # ← 必须在这里 import:
# run_agent.py 模块级没有 import time(原来只有 run_silent 里
# 局部 import 了一个),我加这个函数时直接用了 time.sleep,
# pyflakes 立刻报 undefined name 'time'。
# 这也说明 pyflakes 那一关是有用的。
# 只杀"没有窗口"的那个(后台实例)。taskkill 按镜像名杀会连自己一起杀,
# 所以这里用 wmic/powershell 过滤命令行里带 --silent 的。
try: