2

分发 Windows 应用程序的最佳方式是什么:

  • 我应该使用哪种格式来分发应用程序,exe 文件还是 zip 文件?
  • 我应该签署申请吗?

还有其他我应该考虑的点吗?

我将使用 innosetup 为应用程序创建一个安装程序。该应用程序是使用 node-webkit 制作的。

4

3 回答 3

2

(我不是 Windows 用户,但是)MSI 包比exe 文件和 zip 文件都好。选择交互式或无人值守 [un] 安装的自由,以及处理依赖项和升级的能力足以使其成为最佳选择。WiX 使创建 MSI 变得更容易——试一试。

于 2013-01-10T16:46:24.747 回答
1

只要应用程序部署 - 它对您选择分发的数据格式没有任何功能差异。

我将从用户的角度而不是技术的角度来说话;请包括一个清晰标签的安装程序(MSI 是最好的;但如果它是 .exe 或 .bat 或其他,将其标记为“安装程序”或“单击安装”或类似的东西)和一个有用的自述文件,如果你请选择以 .zip 分发。

于 2013-01-10T16:47:06.187 回答
0

这一切都取决于exe需要什么。如果它只是一个简单的 .NET 可执行文件并且它是自包含的,那么您所需要的只是 zip 中的 exe(等待它包含的 < .NET 2.0)。每个更新的 Windows 后续版本都在操作系统中内置了 .NET 运行时,一直递增到 4.5 或 5.0?

因此,如果您拥有最新的 Windows,并且上面有 .NET 4.5 库,那么您所需要的基本上就是可执行文件。但是,如果它是较旧的操作系统,您可能需要捆绑或链接所需的运行时。某些应用程序需要安装第三方组件和其他 DLL。在这种情况下,您最好的选择是使用第三方工具,如 Install Shield、Wise 或 Orca,您可以在其中自定义安装和安装第三方组件,如 SQL Server Personal、Oracle Personal 或 mySQL Database 或 Crystal 报表组件。

此外,如果需要 NTFS 权限和网络权限或需要注册表值,则需要使用 Wise、InstallShield 等编写脚本,并需要提升权限。Microsoft 还具有一些内置的 Deploy Once(?) 工具,允许通过 Web、网络路径或可执行文件完成此操作。

这完全取决于您的 exe 的复杂性、它对系统的影响程度等。我见过甚至需要防火墙例外等的应用程序。如果您在公司环境中并且有一个域,您可以使用 SCCM/SMS 或统一中心。就像我说的,这一切都取决于复杂性和范围。

如果它是一个简单的 .NET 2.0 应用程序,那么您只需要 zip 中的 exe。最好的方法是将 exe 复制到几个不同的系统并进行测试。

MSI 天生就能够从 shell 或 run/explorer 执行。您还可以将您的安装编译成一个独立的可执行文件。

最重要的是,这完全取决于您的应用程序:)

于 2013-01-10T16:55:58.983 回答