我的问题是msbuild脚本无法找到我的MSI安装程序文件。 这是脚本文件bootstrapper.msbuild:
<Project ToolsVersion="3.5"
xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<ItemGroup>
<BootstrapperFile Include="Microsoft.Windows.Installer.4.5" >
<ProductName>Windows Installer 4.5</ProductName>
</BootstrapperFile>
<!--<BootstrapperFile Include="DotNetFX40" >
<ProductName>Microsoft DotNet Framework 4.5 SP1</ProductName>
</BootstrapperFile>-->
</ItemGroup>
<!-- from http://stackoverflow.com/questions/346175/use-32bit-program-files-directory-in-msbuild
-->
<PropertyGroup>
<ProgramFiles32>$(MSBuildProgramFiles32)</ProgramFiles32>
<ProgramFiles32 Condition=" '' == '$(ProgramFiles32)'">$(ProgramFiles%28x86%29)</ProgramFiles32>
<ProgramFiles32 Condition=" '' == '$(ProgramFiles32)'">$(ProgramFiles)</ProgramFiles32>
</PropertyGroup>
<Target Name="SetupExe">
<GenerateBootstrapper
ApplicationFile="..\MySetup\MySetup\bin\Debug\MySetup.msi"
ApplicationName="MyApplication"
Culture="en"
BootstrapperItems="@(BootstrapperFile)"
ComponentsLocation="HomeSite"
Path="$(ProgramFiles32)\Microsoft SDKs\Windows\v7.0A\Bootstrapper\"
OutputPath="output"/>
</Target>
</Project>
文件夹结构如下:
文件boostrapper.msbuild在Mybootstrapper中。我已经使用命令行尝试了路径,它运行正常。为什么不在ms构建?我错过了什么吗?
问题是GenerateBootstrapper所指的任务目录是什么?
你能告诉我吗?答案 0 :(得分:0)
看起来你的相对路径不正确。尝试:
ApplicationFile="..\MySetup\bin\Debug\MySetup.msi"
答案 1 :(得分:0)
问题是我没有将MSI文件放在生成的setup.exe所在的路径中。我以为后来会包含所有文件...... 我错了吗?