Files
ykxmz/_build/patch_verify_img.py
T
xmz7891 b62ac865ea ykxmz 1.5.0:修复手表端 TLS 证书校验 + MTU 修复网络稳定性
被控端
- 修复 MTU 问题:夹 MSS + 路径 MTU 探测(公网可用率 48% -> 100%)
- 复用 HTTP 连接(免掉每次新建 TLS 的 30% 握手失败)
- 每分钟回头找局域网,自动切回快 400 倍的路径
- 画面心跳帧:静止时省流量,客户端仍知道流是活的
- 锁屏时给出可操作的提示

手表端
- 内置 GTS Root R4 / GlobalSign Root CA,修 SSLHandshakeException
- 连接错误翻译成人话(证书/时间/解析/超时分别提示)
- 经中转连上后用服务器报的地址刷新已配对记录
- 新增局域网连接页面、服务器延迟检测

服务器端
- 支持 chunked 请求体(修每 16 秒一次的连接错乱与大面积 502)
- 网络调优脚本 net-tune.sh(开机自动应用)
- 管理页:批量删除、网络体检、下载区
- 隧道改 HTTP/2 + 双连接

文档
- 许可协议 / 安装前必读 / 安装后须知(作者:小麦子)
2026-10-06 19:01:05 +08:00

70 lines
2.3 KiB
Python

# -*- coding: utf-8 -*-
"""把 verify_all.ps1 里「投图显示方式」这一步改成先落盘再判退出码。
原因:直接
& python xxx.py 2>&1 | Select-Object -Last 3
Record "..." ($LASTEXITCODE -eq 0)
在 verify_all 里会偶发把退出码判成非 0(单独跑同一命令却 10/10 正常),
而且失败时因为只留了最后 3 行,看不到是哪一项失败。
改成:
& python xxx.py *> $log
$code = $LASTEXITCODE # 立刻取走,避免被后续命令影响
显示 $log 的尾部(失败时显示全部)
"""
from __future__ import annotations
import sys
from pathlib import Path
TARGET = Path(r"C:\Users\shu\Desktop\deepseekagent\LanRemote\_tests\verify_all.ps1")
OLD = '''# ---------------------------------------------------------------- 2b
Banner "2b/7 投图显示方式(屏幕中间 / 全屏 / 自定义大小)"
Stop-Strays
& python (Join-Path $root "_tests\\test_image_modes.py") 2>&1 | Select-Object -Last 3
Record "投图显示方式" ($LASTEXITCODE -eq 0)'''
NEW = '''# ---------------------------------------------------------------- 2b
Banner "2b/7 投图显示方式(屏幕中间 / 全屏 / 自定义大小)"
Stop-Strays
$imgLog = Join-Path $env:TEMP "lr_imgmode.txt"
& python (Join-Path $root "_tests\\test_image_modes.py") *> $imgLog
$imgCode = $LASTEXITCODE
if ($imgCode -eq 0) {
Get-Content $imgLog -Encoding UTF8 -ErrorAction SilentlyContinue |
Select-Object -Last 3
} else {
Write-Host "失败输出:" -ForegroundColor Red
Get-Content $imgLog -Encoding UTF8 -ErrorAction SilentlyContinue |
Where-Object { $_ -match "FAIL|通过|Traceback|Error" }
}
Record "投图显示方式" ($imgCode -eq 0)'''
def main() -> int:
raw = TARGET.read_bytes()
bom = raw[:3] == b"\xef\xbb\xbf"
text = raw.decode("utf-8-sig")
if "$imgCode" in text:
print(" 已经改过,跳过")
return 0
if OLD not in text:
print(" [失败] 锚点未找到,实际内容:")
idx = text.find("2b/7")
print(repr(text[max(0, idx - 120):idx + 320]))
return 1
text = text.replace(OLD, NEW, 1)
data = text.encode("utf-8")
if bom:
data = b"\xef\xbb\xbf" + data
TARGET.write_bytes(data)
print(" verify_all.ps1: 投图步骤改为落盘 + 立即取退出码")
return 0
if __name__ == "__main__":
sys.exit(main())