我在 Autohotkey 中创建了一个程序,它创建了一些快捷键,整个公司有 400 名员工,希望永久安装这些快捷键。我设想的程序的工作方式是,在“开始”菜单的“启动”文件夹下添加一个程序的快捷方式,这样当计算机启动时,它就会自动透明地启动。该程序将全天运行。
我是一名自由职业者,无法接触 IT 部门,但我间接地看到过电子邮件,他们坚持要求我必须创建一个 MSI 文件才能将程序推广到所有这些计算机上。我在创建 MSI 包时遇到的第一个问题是,我不知道如何基于 .EXE 文件创建 MSI 文件。第二个问题是,他们说创建这样的文件对他们来说成本很高(我认为这意味着完成这项工作需要花费大约 20,000 美元),因此他们不想频繁更新,而我认为能够快速调整程序以满足新需求并修复错误至关重要。
周三我将与他们开会,因此我想知道他们使用 MSI 软件包的理由是什么,以及为什么他们不能简单地在所有这些计算机上创建指向我的 .EXE 文件的快捷方式(这应该不太难,不是吗?)。快捷方式应该指向 .EXE 文件,该文件位于文件服务器上,因此只需替换它即可更新程序(计算机始终可以访问文件服务器,这意味着没有笔记本电脑)。
他们的论点是什么?
答案1
我在美国一家财富 25 强公司工作。我负责应用程序打包 - 不过这个答案可能有点晚了 - 我们要求所有应用程序都是自行安装的,这样我们才能通过 Altiris 静默地将它们推送到用户工作站。虽然我们更喜欢 MSI 格式的所有软件安装程序,但情况并非总是如此,如果 EXE 安装程序可以通过命令行或 setup.iss 文件静默运行,我会使用它们。如果不能,它们将被重新打包为 MSI 格式。
您的软件包类型只需不到 1 小时即可放入 MSI 并通过 Wise Package Studio 进行编译。假设它有 1 个文件和 1 个快捷方式。实际上,测试和签收所需的时间比实际打包所需的时间更长。所有软件包(应用程序)都经过同行评审并由应用请求者(应用所有者)测试。
我们有一些应用程序经常更新,比如每隔几周更新一次。由于这需要花费大量时间在 MSI 中重建并每隔几周进行测试 - 我们将它们切换为自我更新。我们将它们设置为运行 vb 脚本作为快捷方式,vb 脚本执行的第一件事是查询预定义的网络共享并根据本地副本检查那里的文件日期/版本。如果网络有比其复制的版本更新的版本。EXE 文件运行 - 简单的自我更新。