Skip to content

SeriTerm v1.0.4

Choose a tag to compare

@github-actions github-actions released this 03 Oct 03:00
· 22 commits to main since this release

v1.0.4 — 2026-10-03

新增

  • 小体积启动器(3.8 MB):默认发布产物从 64 MB 的自包含单文件换成启动器。它本身用
    NativeAOT 编成原生 exe、不含 .NET 运行时,
    所以"机器上什么都没装"时也能双击运行;真正的程序体(框架依赖单文件 1.7 MB)Brotli 压缩后内嵌其中。
    对已经装了 .NET 8/9/10 桌面运行时的机器,用户下载量从 64 MB 降到 3.8 MB。
  • 启动时探测 .NET 桌面运行时:已装就直接解包运行;没装则弹一次说明,同意后从微软官方短链下载官方安装包
    (校验 Authenticode 签名后才执行)、以 /install /passive /norestart 静默安装,装完自动继续启动。
    下载走系统 WinHTTP(系统代理、系统证书库),只有一个"是/否"对话框和一个系统进度窗口。
  • runtimeconfig 增加 rollForward: Major:只有 .NET 9/10 桌面运行时的机器可以直接跑,不再被迫装 8.x;
    探测逻辑与之一致(优先 8.x,找不到才往上跨大版本)。
  • 排障开关:--diagnose(把探测、解包结果写成报告,不启动程序)、--install-runtime(只装运行时)。
    环境变量 SERITERM_DOTNET_ROOT 可指定运行时目录,启动器会把它转成 DOTNET_ROOT_X64 交给主程序。

变更

  • 发布两种产物:启动器 SeriTerm-<版本>-win-x64.exe(约 3.8 MB,推荐)与自包含完整版
    SeriTerm-<版本>-win-x64-full.exe(约 64 MB,离线/内网用);release.yml 一次构建并挂两个。
  • tools/publish.ps1:默认改为出启动器,新增 -All 与 -SelfContained,自包含产物文件名加 -full 后缀
    (-FrameworkDependent 不变,仍出 -fd)。

实测

  • 产物:启动器 3,936,768 字节(3.8 MB),自包含完整版 67,127,223 字节(64.0 MB),相差 17 倍。
    内嵌程序体 1,698,661 字节 → Brotli 后 625,533 字节。
  • 体积来源做了对照实验:启动器本体(不含内嵌程序体)在换掉托管 HTTPS 之前是 6,170,624 字节(5.88 MB),
    其中托管 System.Net.Security/Sockets/托管加密占 3.25 MB(对照:把下载那段整个去掉后为 2,755,072 字节),
    Brotli 解包占 0.77 MB;改用 WinHTTP 后本体 3,311,104 字节(3.16 MB)。
  • 官方安装包实测下载 58,715,896 字节、SHA256 C375DFD8…84D1CC(与另一次独立下载逐字节一致)、
    WinVerifyTrust 返回 0x00000000。
  • 分支验证:已装运行时 → 解包到 %LocalAppData%\SeriTerm\app\1.0.4.0\ 并启动主程序,
    同时自动清掉伪造的旧版本目录 0.9.9.0,且设置文件 SHA256 前后一致;
    未装运行时(用 SERITERM_DOTNET_ROOT 指向空目录模拟)→ 依次弹出说明框与提示框,点「否」后退出码 2。
  • 未验证:安装程序本身的执行(/install /passive + UAC)没有在本机跑,因为它会改动本机已装的
    .NET 8 桌面运行时(8.0.19 → 8.0.31);这一步之前的所有环节(下载、签名校验、退出码判定分支)都单独验证过。

下载

两个产物功能完全一样,按你的情况选一个即可。文件名里的 1.0.4 就是程序内显示的版本号。

1. SeriTerm-1.0.4-win-x64.exe —— 推荐,3.75 MB

  • 大小:3935232 字节(3.75 MB)
  • SHA256:15ABC7C7484929495D04F9E7CD958C80FE7B106C0BA7DC65B87E9314AD566C55
  • 本身不含 .NET 运行时,因此在没装运行时的机器上也能双击运行:
    启动时会检查 .NET 8 桌面运行时,已装就直接启动;没装会先问一句,
    同意后从微软官方站点下载官方安装包(校验数字签名)并安装,装完自动继续启动。
  • 已经装过 .NET 8/9/10 桌面运行时的机器,只下载这 3.75 MB;
    没有任何 .NET 的机器需要额外下载约 56 MB 的官方运行时安装包(装一次,之后所有 .NET 程序共用)。

2. SeriTerm-1.0.4-win-x64-full.exe —— 离线/内网用,64 MB

  • 大小:67073690 字节(64 MB)
  • SHA256:D5661EDF96C2ECB651214B63C10FF52C4F94B1A18D770182F0B37F57DB2AC3A1
  • 运行时整套打包在 exe 里,不联网、不装任何东西,下载后直接双击运行。
    首次启动需要自解压到临时目录,会比常规安装版稍慢一点。

系统要求

  • Windows 10 1809 或更高 / Windows 11(64 位)

文档

许可

MIT License。运行时依赖 CommunityToolkit.Mvvm、Microsoft.Extensions.*、System.IO.Ports、
System.Management,均为 MIT 许可。