Visual studio 2008 是否使用相同的vdproj文件创建x86和x64安装程序?

Visual studio 2008 是否使用相同的vdproj文件创建x86和x64安装程序?,visual-studio-2008,deployment,x86,64-bit,Visual Studio 2008,Deployment,X86,64 Bit,我想使用相同的VisualStudio2008部署项目构建x86 msi包和x64包 我在“项目属性”对话框中看到一个TargetPlatform,我知道我可以使用它来选择x86或x64(或者安腾) 问题是我似乎无法将此属性与项目配置(?)相关联 理想情况下,我希望能够通过从构建脚本(批处理文件)执行devenv.exe两次来创建单独的x86和x64 msi安装程序,每次调用通过提供参数以某种方式设置TargetPlatform属性 如果可能,我希望避免使用WIX或其他第三方工具 注意:我注意到

我想使用相同的VisualStudio2008部署项目构建x86 msi包和x64包

我在“项目属性”对话框中看到一个TargetPlatform,我知道我可以使用它来选择x86或x64(或者安腾)

问题是我似乎无法将此属性与项目配置(?)相关联

理想情况下,我希望能够通过从构建脚本(批处理文件)执行devenv.exe两次来创建单独的x86和x64 msi安装程序,每次调用通过提供参数以某种方式设置TargetPlatform属性

如果可能,我希望避免使用WIX或其他第三方工具

注意:我注意到x86和x64部署项目之间的差异主要有:

  • Folder\DefaultLocation=ProgramFilesFolder(x86)| ProgramFiles64文件夹(x64)
  • Product\TargetPlatform=“3:0”(x86)|“3:1”(x64)|“3:2”(安腾)
我真的必须创建两个单独的部署项目才能使用devenv.exe创建单独的msi包吗?仅仅因为这两个差异


我想我可以在每次调用devenv.exe(?)

之前使用脚本进行这些更改当我遇到这个问题时,我必须在执行devenv命令之前在vdproj文件中使用string replace。对于替换,我使用了的文件替换任务 然后,我的msbuild项目看起来几乎像这样:

<Project DefaultTargets="Default" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<PropertyGroup>
<Configuration>Release</Configuration>
<x86>3:0</x86>
<x64>3:1</x64>
<Import Project="$(SDCTasksPath)\Microsoft.Sdc.Common.tasks"/>
<Target Name="Default">
    <File.Replace Path="$(SolutionDirectory)Setup\Setup.vdproj" OldValue="%22TargetPlatform%22 = %22$(x86)%22" NewValue="%22TargetPlatform%22 = %22$(x64)%22" />
<Exec Command="devenv.exe $(SolutionDirectory)Solution.sln /build $(Configuration) /project $(SolutionDirectory)Setup\Setup.vdproj /projectconfig $(Configuration)"></Exec>

释放
3:0
3:1