使用Wix 3.10.2复制许可证文件?我们有一个要求,就是在安装web应用程序到IIS之后,我们需要复制一些许可证文件。许可证文件的复制将是序列中的最后一个。许可证文件将位于刻录(引导程序)setup.exe旁边。这样我们就可以根据用户来控制需要安装的许可证文件。我试图了解许可证文件的数量是否与.exe一起存在问题?是否有自定义操作选择不属于msi或exe的文件?Wix刻录文件松散安装
回答
您可能需要更准确地确定要在何时发生副本。您的原始问题是“安装后”,这意味着安装已完成,并且您生成的MSI不再运行。但在稍后的评论中你会说“在安装过程中”。
如果安装后是你想要的,那么你可以添加一个自定义的可执行文件到你的刻录包,它可以做任何你想要的。在许多这种情况下,需要该文件的应用程序只需在MSI的帮助下说出它的安装位置,或者使用Windows Installer的SourceList功能来获取位置。
如果您想在安装过程中复制文件,那么CopyFile元素可能就是您需要的。它具有通配符功能来定义要复制的文件。您的源位置将是SourceDir属性,目标将是您定义的目录之一。请注意,产品卸载后,这些文件将不会被卸载。
威克斯的CopyFile:
http://wixtoolset.org/documentation/manual/v3/xsd/wix/copyfile.html
1)不会有与EXE
2位于沿的许可文件数)使用媒体元素没有内阁的名称,你可以指定某些文件既不是驾驶室内或嵌入到一个问题msi,无需自定义操作。请参阅http://wixtoolset.org/documentation/manual/v3/xsd/wix/media.html
感谢您的指针。但是,我是否必须每次都将许可证文件作为刻录项目的一部分进行编译?我可以使用某种脚本驻留在exe文件中,它将查找与exe相同的目录中的任何许可证文件,以将它们复制到安装目录。这样用户可以在安装之前复制所需的许可证文件并执行该exe文件。 – varun7447
Windows安装程序旨在知道哪些文件正在安装,以便它可以在必要时正确修复,回滚和卸载它们。一个能够复制任何通用文件的安装程序会首先打破使用Windows Installer的设计和好处。你可能会更好地使用不同的技术。编写可正确安装,回滚,卸载和修复通用文件的自定义操作将非常困难。 – tjleigh
是的,很难相信像Wix这样的工具无法在从源目录安装期间基于扩展名执行简单的复制文件。 – varun7447
我不得不使用随Visual Studio的SDK原生的引导。通过引导程序,您还可以创建安装.net等前提条件。这适用于我的要求。此外还有一个msbuild任务,以便您可以自动执行它。使用安装项目创建MSI和VS引导来创建setup.exe
- 1. WIX刻录解除安装?
- 2. 如何在WiX刻录中包含可修改的松散文件?
- 3. WIX刻录自定义安装页面
- 4. Wix刻录安装程序没有重启静默安装
- 5. 使用Wix Bootstrapper安装.NET可再发行组件(刻录)
- 6. WIX安装目录条件
- 7. 安装前安装WiX检查文件
- 8. WiX刻录降级
- 9. WIX安装文件,覆盖
- 10. 重新启动后WiX刻录/强制重启继续安装
- 11. wix 3.6刻录功能树以选择MSI进行安装
- 12. Wix刻录条件是什么Wix“刻录内置变量”设置?
- 13. 松散的目录/文件权限:陷阱,安全问题?
- 14. WiX安装条件
- 15. WiX 3.8刻录程序无法升级软件包安装程序
- 16. 刻录和WiX - 现状和文档
- 17. WiX刻录自定义UI
- 18. WiX:有条件安装服务,但无条件安装文件
- 19. Wix - 如何从安装的目录安装后运行exe文件?
- 20. Wix安装的文件提升权限
- 21. 安装WIX后打开Excel文件
- 22. WIX |安装时删除* .config文件
- 23. Wix:更改安装文件夹树
- 24. WiX:自定义安装文件夹
- 25. “松散”装箱算法
- 26. Wix:安装MSMQ组件
- 27. 将文件安装到WiX中的Windows目录中
- 28. 复制外部文件以安装目录WiX
- 29. Wix 3.5在安装根目录之外创建文件夹
- 30. 使用Wix安装后删除目录和文件
我已经更新了我的第一个问题以澄清。许可证文件是安装的一部分。但是它是在序列的最后完成的。我想向你确认,如果我们需要全部*。lic文件作为msi编译的一部分,用于CopyFile元素的工作? – varun7447
是的,它的工作原理就是这样。作为一项测试,我刚刚使用MSI旁边的* .txt将两个.txt文件复制到主安装文件夹中。 – PhilDW
我想用CopyFile做这样的事情:' ' –
varun7447