Windows installer 如何创建一个MSI文件,它只是将目录复制到程序文件中?

Windows installer 如何创建一个MSI文件,它只是将目录复制到程序文件中?,windows-installer,Windows Installer,我想创建一个MSI文件,它只需将一个目录复制到“Program Files”目录中,并在开始菜单中创建一个图标 没别的了。 对用户没有问题,没有依赖项,没有注册表项,等等。 只需复制目录并设置图标 如果我们部署了一个新版本的程序,那么MSI应该只复制新版本而不是旧版本。没有“卸载”过程 这项任务使用哪种工具?我想答案是任何常用工具,因为它们都可以完成这项任务 (2017)的使用非常简单——一开始——然后,考虑到您的范围,您可能会面临不易受影响的问题无法在构建过程中自动执行 是一种商业产品,您可

我想创建一个MSI文件,它只需将一个目录复制到“Program Files”目录中,并在开始菜单中创建一个图标

没别的了。 对用户没有问题,没有依赖项,没有注册表项,等等。 只需复制目录并设置图标

如果我们部署了一个新版本的程序,那么MSI应该只复制新版本而不是旧版本。没有“卸载”过程


这项任务使用哪种工具?

我想答案是任何常用工具,因为它们都可以完成这项任务

  • (2017)的使用非常简单——一开始——然后,考虑到您的范围,您可能会面临不易受影响的问题<据我所知,strong>无法在构建过程中自动执行
  • 是一种商业产品,您可以根据自己的需求使用它。你可以试一试。所有的东西都是高级安装程序
  • 可以做你想做的事,而且完全免费。需要一段时间来适应。(有点陈旧过时,但是您得到了编译为MSI格式的图片XML标记)。由于某些原因,投票率比平时高(答案现在更新了——很小)。或许可以略读一下
有关直接下载链接,请参见顶部的链接答案


静默安装:任何MSI文件都可以通过标准的
msiexec.exe
命令行静默运行(无GUI):

msiexec.exe /I "C:\Your.msi" /QN /L*V "C:\msilog.log"
快速参数解释:


我想答案是任何常用工具,因为他们都能做到这一点

  • (2017)的使用非常简单——一开始——然后,考虑到您的范围,您可能会面临不易受影响的问题<据我所知,strong>无法在构建过程中自动执行
  • 是一种商业产品,您可以根据自己的需求使用它。你可以试一试。所有的东西都是高级安装程序
  • 可以做你想做的事,而且完全免费。需要一段时间来适应。(有点陈旧过时,但是您得到了编译为MSI格式的图片XML标记)。由于某些原因,投票率比平时高(答案现在更新了——很小)。或许可以略读一下
有关直接下载链接,请参见顶部的链接答案


静默安装:任何MSI文件都可以通过标准的
msiexec.exe
命令行静默运行(无GUI):

msiexec.exe /I "C:\Your.msi" /QN /L*V "C:\msilog.log"
快速参数解释:


只是为了扩展Stein的回答,使用Advanced Installer的(“简单”项目),您可以构建这个简单的包

创建项目后,只需转到产品详细信息页面并禁用“向Windows Installer注册”选项


很可能上面提到的所有工具都有一个类似的选项,您只需搜索它,因为我对它们的所有细节都不太熟悉(p.S.我在team building Advanced Installer上工作)。

仅扩展Stein的答案,使用Advanced Installer的(“简单”项目),您可以构建这个简单的包

创建项目后,只需转到产品详细信息页面并禁用“向Windows Installer注册”选项


很可能上面提到的所有工具都有类似的选项,您只需搜索它,因为我对它们的所有细节都不太熟悉(请注意,我在team building Advanced Installer上工作)。

这是开始使用WiX的一个很好的资源。非常感谢您全面的回答!我现在正在查看您提到的所有工具和其他答案!最后,高级安装程序(甚至是免费版本!)完成了任务!谢谢它就像一个符咒,正是我想要的。我也试过WiX,但这太复杂了。是开始使用WiX的好资源。非常感谢你的全面回答!我现在正在查看您提到的所有工具和其他答案!最后,高级安装程序(甚至是免费版本!)完成了任务!谢谢它就像一个符咒,正是我想要的。我也试过WiX,但这太复杂了。我不确定他是否想禁用Windows Installer注册,但也许他想禁用?我以为他说他自己没有实际的注册记录。但也许这种不注册的方法更适合他的简单要求?如果不是的话,他需要设置一个基本的主要升级-从外观上看,这在简单的项目类型中会自动神奇地发生?好吧,这就是我对“简单复制”和“不卸载”的理解,我以前从我们的用户那里看到过这个请求。关于自动升级,是的,它在所有项目类型中都“自动神奇地”发生,用户只需要在产品详细信息页面中增加版本。是的,也许这就是他需要的。看起来他也想抑制GUI——现在我又读了一遍。我将添加一个关于如何抑制它的快速提示。尝试了那个版本更新。相当整洁。很好。非常感谢,我也要试试这个工具!禁用“向Windows Installer注册”是我甚至没有想到的事情@SteinÅsmul我们有一个连接到sql server的.net cleint。用户配置存储在数据库中。桌面环境、连接字符串和.net库在所有计算机上都是相同的,因此我们希望它尽可能简单-只需将客户端文件复制到“程序文件”就可以了。我想,您只需在静默模式下安装一个简单的MSI即可。我不确定他是否要禁用Windows Installer注册,但也许他会?我以为他说他自己没有实际的注册记录。但也许这种不注册的方法更适合他的简单要求?如果没有,他需要设置