• v0.1.1 7680b77c40

    lion released this 2026-10-24 11:20:45 +08:00 | 1 commits to main since this release

    Windows 10/11 x64 托盘版网关保活工具:按健康检查在「主路由直连」与「旁路由」之间自动切换出口,切回直连时恢复接管前的 DNS。

    附件

    文件 说明
    GatewayKeepalive-0.1.1-win-x64.exe 单文件托盘版(553,664 字节)
    GatewayKeepalive-0.1.1-win-x64.exe.sha256 SHA256 校验值

    运行要求

    • Windows 10 1809+ / Windows 11,x64
    • .NET 10 桌面运行时(Desktop Runtime x64) —— 单文件但依赖运行时,不提供自带运行时版本
    • 修改网卡 / DNS、注册登录自启任务需要管理员权限,程序启动时会请求提升

    本版修复(第八轮):重启后登录自启报 "Access to the path ... is denied"

    真因不是提权、不是任务配置、不是 ACL:exe 所在的目录带了 Low 完整性强制的标签(例如开发目录 D:\dsh workspace),Windows 会用低完整性令牌运行其中的程序,它连自己的 %LOCALAPPDATA% 都写不了,于是第一步写日志就失败,托盘起不来。

    请把 exe 放在自己的用户目录下(例如 %LOCALAPPDATA%\Programs\GatewayKeepalive\ 或 C:\Program Files\GatewayKeepalive\),不要从沙箱/共享/低完整性目录运行。

    程序也做了兜底:

    • 日志改为 fail-safe:首选目录写不了会依次回退到 %LOCALAPPDATA%Low、%TEMP%、%ProgramData%,并在日志里写明「日志目录改为 …」,不再因为写不了日志而整个起不来;
    • 启动自检写明「数据目录=… 可写=… 日志目录=…」,致命提示会直接说明实际生效的日志位置和低完整性判断;
    • 新增只读自检 GatewayKeepalive.exe --logcheck:输出程序路径、数据目录是否可写、实际日志目录与结论,一条命令就能判断“这个位置能不能跑”。

    首次运行会看到的两个提示

    1. 「打开文件 - 安全警告 / 未知发布者」:exe 未做代码签名,点「运行」即可;也可执行 tools\unblock-publish.ps1 或右键属性 → 解除锁定。
    2. UAC 提升提示:修改网络配置需要管理员权限。

    上手

    1. 把 exe 放到固定目录,先手动运行一次确认能识别网卡;换位置后以管理员身份启动,程序会自动把登录自启任务改成新路径。
    2. 托盘图标右键 →「设置」,填入主路由网关、旁路由网关、旁路由 DNS,保存。
    3. 需要开机自启时勾选「登录后自动启动」,程序会注册计划任务(最高权限、登录时触发)。

    其他本版内容

    • 设置窗口独立非模态、三页签卡片布局,位置居中不被托盘浮窗遮挡;页签选中即时重绘;输入框滚轮交给外层页面
    • 登录自启改用任务 XML + schtasks 写入并读回校验,任务不存在按 HRESULT 判定
    • 发布链路去掉自带运行时分支
    • 测试:核心 49/49、探测 16/16
    Downloads