我想为我的项目创建一个安装程序,主要是为了处理数量开始增长的外部依赖项.
问题是这些组件中的大多数似乎以不同的方式分发,因此我需要一个能够应对以下所有内容的安装程序.我看过各种各样的东西,但是很多似乎并没有涵盖我需要的所有东西(比如如何使用Visual Studio安装项目安装directX ......),或者甚至没有创建一个合适的Windows安装程序(例如.msi).
将我的所有应用程序文件复制到目标目录
创建开始菜单和桌面快捷方式
直接安装x(即调用dxsetup.exe/silent)
安装VC9 CRT redist(似乎是一个"合并模块",看着msdn无论是什么......)
如果满足下列条件之一,则仅需要管理权限
DirectX和/或VC9 CRT尚未存在或需要更新
为所有用户安装
安装到用户没有写入权限的目录
如果安装在完成之前中止,可以回滚所有内容
生成卸载程序和安装程序
确保用户接受所有必需的EULA(我的一个,VC9 Redist,DirectX等)
例如,我得到了VS2008 SETP项目为我的应用程序文件和VC9 CRT的工作,但我看不出反正来告诉它只是与/无声参数运行dxsetup.exe且不将其和所有其他DX安装程序解压缩到应用程序目录或东西......
编辑:
如果我可以拥有x86和x86-64的统一安装程序,那将是非常好的,它安装正确的组件(例如myapp_x86.exe或myapp_x64.exe),具体取决于操作系统是否为64位.
EDIT2:
忘记提及,但是免费或低成本的解决方案也会受到欢迎,因为我需要一些解决方案来处理我的一些较小的个人资料.
WiX就是你想要的.您需要阅读v3文档和示例,因为它不是一件简单的事情.一旦你开始,你将有后续问题,你应该发布作为新问题.
另请参阅WiX 教程,但请记住它涉及v2,其中很多都是过时的或在v3中已过时.