我想在命令提示符下使用devenv
命令从.vdproj
文件生成MSI文件。该命令运行良好,但没有生成MSI文件。哪里不对?在命令行中针对.vdproj运行devenv不会生成MSI
我应该在环境变量中设置什么,或者有没有其他方法可以从.vdproj
文件生成MSI?
我想在命令提示符下使用devenv
命令从.vdproj
文件生成MSI文件。该命令运行良好,但没有生成MSI文件。哪里不对?在命令行中针对.vdproj运行devenv不会生成MSI
我应该在环境变量中设置什么,或者有没有其他方法可以从.vdproj
文件生成MSI?
我不认为msi会从devenv.com生成,你可以选择wix来创建安装程序。
南特有一个任务,msi任务,但它需要micrsoft内阁sdk,它不可用于下载。
阅读更多细节Build merge module without Devenv from .vdproj
附:如果您发现另一种构建安装程序的方式,请分享。
这通常是(以我的经验!)由于没有针对正确的构建配置而导致的。在Visual Studio中,在解决方案级别,您可以转至Build
菜单并选择Configuration Manager
。确保对于所有适用配置(通过Active Solution Configuration
下拉列表选择),安装程序项目在Build
列中有一个勾号。
现在,您需要确保在调用devenv的,当你通过适当的构建配置(即一个有Build
打勾的安装项目)如下:
C:\PathToVisualStudio\devenv.exe /Rebuild Release C:\PathToProject\ProjectName.sln" /Out "PathToProject\vs_errors.txt"
(在这个例子中,Release
是我针对的生成配置)
该命令还记录的Visual Studio的输出到同一文件夹作为您的解决方案称为vs_errors.txt
这样你就可以查看该文本文件,以确定是否有任何其他原因安装项目无法构建。
上面的脚本为我工作,尝试它,让我知道它是否适合你。你几乎可以有任何配置。我已经使用了Release | x86。只需用您的配置替换该行,它应该工作。确保您使用的任何配置存在于.sln文件或.csproj文件中,否则您可能会收到关于无效配置的一些错误。希望这可以帮助。
<target name="BuildMsi">
<echo message="Creating installables (.msi) for MyTestApplication, please wait..."/>
<exec program="c:\program files\Microsoft Visual Studio 9.0\Common7\IDE\devenv.exe">
<arg value="c:\My app\My_Test_solution.sln"/>
<arg value="/build"/>
<arg value="Release|x86" />
<arg value="/project"/>
<arg value="c:\My app\setup\My_Test_solution.vdproj"/>
</exec>
</target>
我的情况是一样的,并与/项目给予项目名称与.msi文件生成的帮助下,
devenv /build Release /project SDK-Deployment SDK-Deployment.vdproj