Installation Windows应用程序安装程序框架

Installation Windows应用程序安装程序框架,installation,windows-installer,installshield,exe,Installation,Windows Installer,Installshield,Exe,可下载的应用程序会提供多种类型的安装程序,这对我来说总是很奇怪。例如,有时您可以选择.exe或.msi 某些类型的安装程序比其他类型的安装程序有优势吗?你选择哪一个重要吗?作为一名开发人员,为什么我要为我的用户提供不同的安装程序?exe安装程序大多是压缩安装程序。微星不能压缩真的好。 可以直接与windows active directory在计算机上共享/安装的msi文件。与.exe相比,.msi的一大优点是,系统管理员可以“重新处理”(我不记得正确的术语)这些文件,以便通过网络安装,以便在公

可下载的应用程序会提供多种类型的安装程序,这对我来说总是很奇怪。例如,有时您可以选择.exe或.msi


某些类型的安装程序比其他类型的安装程序有优势吗?你选择哪一个重要吗?作为一名开发人员,为什么我要为我的用户提供不同的安装程序?

exe安装程序大多是压缩安装程序。微星不能压缩真的好。
可以直接与windows active directory在计算机上共享/安装的msi文件。

与.exe相比,.msi的一大优点是,系统管理员可以“重新处理”(我不记得正确的术语)这些文件,以便通过网络安装,以便在公司环境中部署。

在公司环境中,客户端通常受到“锁定”策略的约束,该策略禁止他们下载EXE文件,但通常MSI文件是正常的。

EXE和MSI之间的一个大区别: 您可以编辑MSI文件。
您可以直接使用或通过WindowsInstaller API编码访问MSI数据库,使用您最喜欢的Windows黑客方法

例如,我编写了一个基于python的构建器,在许多其他任务中,它定期编辑和更新MSI包

对勇敢的灵魂的快速警告:

尽管API似乎有很好的文档记录,但很多WI功能都是微妙的,甚至是隐晦的——MS Office团队在创建Windows Installer时肯定没有选择“最少惊喜”的原则

如果您选择钻研WI的神秘世界,请做好长时间抓头、繁琐调试和大量MSI日志文件的准备