Files
ykxmz/_build/rename_app_170.py
T
xmz7891 81e923a0aa 1.7.1:修白屏 + 配对 + 官网管理页分家
手表端
- 修「连上后一片白屏」:initTabs() 从来没被调用过,
  导致 tabDefs 为 null、selectTab 直接 return,
  标签栏里只剩一个孤立的滑动指示器
- 应用名改成 ykxmz

被控端
- 修「设备已关闭新设备配对」:配对码本身就是密钥,
  拿着正确的码就该放行。老逻辑"首台配对后自动关窗"会把
  手表重装的人永久挡在外面
- 应用名改成 ykxmz

服务器端
- / 改成官网(公开,简洁介绍 + 下载)
- /zhingzhuanzhan 中转站管理(要登录),/admin 自动跳转
- 管理账号 xmz7891,可改
- 官网 / 登录页 / 管理页都加上 favicon
2026-10-06 23:08:07 +08:00

105 lines
3.8 KiB
Python
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# -*- coding: utf-8 -*-
r"""应用名统一改成 ykxmz(用户:"直接改成 ykxmz")。
要改的地方:
windows/lanremote/__init__.py APP_NAME = "局域网遥控 被控端" -> "ykxmz"
installer/ykxmz.iss MyAppName -> "ykxmz"
(安装向导标题、控制面板卸载项都用它)
windows/version_info.txt EXE 属性里的产品名
顺带修测试脚本:不带 --code 时 setup_done 是 false,
程序会去弹设置窗口而不会静默监听,所以测试必须带 --code。
"""
from __future__ import annotations
import ast
import sys
from pathlib import Path
ROOT = Path(r"C:\Users\shu\Desktop\deepseekagent\LanRemote")
INIT = ROOT / "windows" / "lanremote" / "__init__.py"
ISS = ROOT / "installer" / "ykxmz.iss"
VINFO = ROOT / "windows" / "version_info.txt"
TEST = ROOT / "_build" / "test_pair_reopen.py"
OLD_NAMES = (
"ykxmz 教室电脑手表遥控",
"局域网遥控 被控端",
"局域网遥控 · 被控端",
"局域网遥控 被控端(Windows)",
)
def main() -> int:
ok = True
# ---- 1. 内部应用名 ----
text = INIT.read_text(encoding="utf-8")
if 'APP_NAME = "ykxmz"' in text:
print(" __init__.py: 已经是 ykxmz")
else:
for old in OLD_NAMES:
text = text.replace(f'"{old}"', '"ykxmz"')
INIT.write_text(text, encoding="utf-8", newline="\n")
print(" __init__.py: 应用名 -> ykxmz")
# ---- 2. 安装包显示名 ----
itext = ISS.read_text(encoding="utf-8")
if '#define MyAppName "ykxmz"' in itext:
print(" ykxmz.iss: 已经是 ykxmz")
else:
for old in OLD_NAMES:
itext = itext.replace(f'#define MyAppName "{old}"',
'#define MyAppName "ykxmz"')
ISS.write_text(itext, encoding="utf-8", newline="\r\n")
print(" ykxmz.iss: 安装向导显示名 -> ykxmz")
# ---- 3. EXE 版本信息里的产品名 ----
if VINFO.is_file():
vtext = VINFO.read_text(encoding="utf-8")
changed = False
for old in OLD_NAMES:
if f'"{old}"' in vtext:
vtext = vtext.replace(f'"{old}"', '"ykxmz"')
changed = True
if changed:
VINFO.write_text(vtext, encoding="utf-8", newline="\n")
print(" version_info.txt: 产品名 -> ykxmz")
# ---- 4. 测试脚本:必须带 --code ----
ttext = TEST.read_text(encoding="utf-8")
old = ''' [sys.executable, "run_agent.py", "--port", str(PORT), "--new-code"],'''
new = ''' # 必须带 --code:不然 setup_done 是 false,
# 程序会去弹设置窗口(需要桌面),根本不会静默监听端口。
[sys.executable, "run_agent.py", "--port", str(PORT),
"--code", "135790", "--silent"],'''
if old in ttext:
TEST.write_text(ttext.replace(old, new, 1),
encoding="utf-8", newline="\n")
print(" 测试脚本: 改成带 --code --silent 启动")
# ---- 复核 ----
print()
checks = [
(INIT, 'APP_NAME = "ykxmz"', "内部应用名"),
(ISS, '#define MyAppName "ykxmz"', "安装包显示名"),
(TEST, '"--code", "135790"', "测试启动参数"),
]
for path, needle, label in checks:
got = needle in path.read_text(encoding="utf-8")
print(f" {label}: {'✓' if got else '✗'}")
ok = ok and got
for path, label in ((INIT, "__init__.py"), (TEST, "测试脚本")):
try:
ast.parse(path.read_text(encoding="utf-8"))
print(f" {label} 语法 OK")
except SyntaxError as exc:
print(f" [失败] {label} 语法错误: 行 {exc.lineno}: {exc.msg}")
ok = False
return 0 if ok else 1
if __name__ == "__main__":
sys.exit(main())