# -*- coding: utf-8 -*- """把版本号从 1.3.0 升到 1.4.0(跨网络版)。 要改的地方: windows/lanremote/__init__.py __version__ windows/version_info.txt FileVersion / ProductVersion _build/package.py VERSION android/build_apk.ps1 APK 文件名里的版本 """ from __future__ import annotations import re import sys from pathlib import Path ROOT = Path(r"C:\Users\shu\Desktop\deepseekagent\LanRemote") OLD = "1.3.0" NEW = "1.4.0" TARGETS = [ (ROOT / "windows" / "lanremote" / "__init__.py", '__version__ = "1.3.0"', '__version__ = "1.4.0"'), (ROOT / "windows" / "version_info.txt", '"1.3.0.0"', '"1.4.0.0"'), (ROOT / "_build" / "package.py", 'VERSION = "1.3.0"', 'VERSION = "1.4.0"'), ] def main() -> int: ok = True for path, old, new in TARGETS: if not path.is_file(): print(f" [跳过] 不存在: {path.name}") continue text = path.read_text(encoding="utf-8") count = text.count(old) if count == 0: print(f" [跳过] {path.name}: 没有 {old}") continue text = text.replace(old, new) path.write_text(text, encoding="utf-8") print(f" {path.name}: 改了 {count} 处") # Android 构建脚本里的版本 apk = ROOT / "android" / "build_apk.ps1" if apk.is_file(): text = apk.read_text(encoding="utf-8-sig") count = text.count(OLD) if count: text = text.replace(OLD, NEW) apk.write_bytes(b"\xef\xbb\xbf" + text.encode("utf-8")) print(f" build_apk.ps1: 改了 {count} 处(保留 BOM)") # 校验 version = (ROOT / "windows" / "lanremote" / "__init__.py").read_text( encoding="utf-8") match = re.search(r'__version__ = "([^"]+)"', version) print(f" 现在的版本: {match.group(1) if match else '?'}") if match and match.group(1) != NEW: ok = False return 0 if ok else 1 if __name__ == "__main__": sys.exit(main())