人人都会AI编程

Windows:NSIS 安装包、MSI 安装包、便携版

更新时间:2026-07-11

Tauri 在 Windows 平台上提供了三种主流的应用分发格式:NSIS 安装包、MSI 安装包和便携版。它们分别适用于不同的场景,配置方式都集中在 tauri.conf.jsonbundle 部分,清晰且灵活。


1. NSIS 安装包

NSIS(Nullsoft Scriptable Install System)是 Tauri 在 Windows 上的默认安装程序格式,生成 .exe 安装包。它的特点是轻量、高度可定制,适合大多数桌面应用场景。

  • 默认启用:在 tauri.conf.json 中只要设置了 bundle.active: true,就会自动生成 NSIS 安装包。
  • 常用配置
  {
    "bundle": {
      "active": true,
      "targets": "all",
      "windows": {
        "nsis": {
          "installerIcon": "icons/icon.ico",
          "installMode": "currentUser",
          "languages": ["SimpChinese", "English"]
        }
      }
    }
  }
  
  • installMode:可设为 currentUser(仅当前用户,无需管理员权限)或 perMachine(所有用户,需管理员权限)。
  • languages:支持多语言安装界面(中文、英文等)。
  • 优点:体积小,安装体验流畅,支持自定义安装路径、开机自启选项、许可协议等,脚本扩展性极强。
  • 适合场景:面向普通用户的工具类应用、效率软件、内部系统客户端。

2. MSI 安装包

MSI(Microsoft Installer)是 Windows 的企业级安装格式,.msi 文件与组策略、SCCM 等企业部署工具深度集成。Tauri 同样原生支持生成 MSI 安装包。

  • 启用方式:在 tauri.conf.json 中配置 targets"msi",或者构建时指定 --target msi
  {
    "bundle": {
      "targets": ["msi"],
      "windows": {
        "wix": {
          "language": "zh-CN"
        }
      }
    }
  }
  

Tauri 底层使用 WiX Toolset 生成 MSI,因此需要安装 WiX(构建时会自动检测)。

  • 独特优势:支持静默安装(/quiet)、卸载修复、软件限制策略,是企业 IT 管理的首选格式。
  • 注意事项:MSI 安装过程通常需要管理员权限;如果应用已有 NSIS 版本,改为 MSI 可能需要额外的迁移步骤,但 Tauri 的 API 层面保持一致。
  • 适合场景:需要批量部署到企业内网、分发到受控环境、符合企业软件管理规范的应用。

3. 便携版(Portable)

便携版是一个免安装、直接运行.exe 文件,不写注册表,不创建快捷方式,所有配置和数据通常保存在可执行文件同级目录下。非常适合“拿到哪儿用到哪儿”的轻量工具。

  • 配置:Tauri 将便携版视为一种特殊的捆绑格式,一般通过构建参数生成,而不是在配置文件中专门设置。使用命令:
  npx tauri build --bundles portable
  

或者在 tauri.conf.json 中这样写:

  {
    "bundle": {
      "targets": ["portable"]
    }
  }
  

这会生成一个自包含的 .exe,双击即用,无需安装过程。

  • 行为特点
  • 应用会在自身目录下创建 data 文件夹存放用户数据、配置文件等。
  • 不会在“程序和功能”中留下条目,也不会在系统注册表写入关键信息。
  • 如果开启了自动更新,Tauri 的更新机制同样适用于便携版(但需注意更新权限)。
  • 适合场景:放到 U 盘随时使用的诊断工具、临时性工具、绿色软件分发、开发者个人使用的快捷脚本。

实际选择建议

  • 个人工具/小团队分发 → 使用默认的 NSIS 安装包,用户体验好,构建简单。
  • 企业内部部署/IT 管理要求 → 使用 MSI 安装包,方便静默推送和组策略控制。
  • 免安装即用/便携场景 → 使用便携版,零残留,移动性强。

这三种格式可以共存,Tauri 的构建系统不会互相排斥——你可以一次性生成全部格式,让用户按需下载。无论是哪种格式,应用的核心功能(Rust 后端、WebView 前端)完全一致,只需考虑分发方式即可。