Visual studio Visual Studio中x86和x64之间的自定义生成步骤路径

Visual studio Visual Studio中x86和x64之间的自定义生成步骤路径,visual-studio,Visual Studio,作为参考,我使用的是VisualStudio2010 我有一个自定义构建步骤,定义如下: if exist "$(TargetDir)"server.dll copy "$(TargetDir)"server.dll "c:\program files (x86)\myapp\server.dll" 这在我运行64位Windows的桌面上非常有效。但是,当我在笔记本电脑上构建时,c:\ProgramFiles(x86)\n不存在,因为它运行的是32位Windows。我想在两个版本的Window

作为参考,我使用的是VisualStudio2010

我有一个自定义构建步骤,定义如下:

if exist "$(TargetDir)"server.dll copy "$(TargetDir)"server.dll "c:\program files (x86)\myapp\server.dll"
这在我运行64位Windows的桌面上非常有效。但是,当我在笔记本电脑上构建时,c:\ProgramFiles(x86)\n不存在,因为它运行的是32位Windows。我想在两个版本的Windows之间加入一些可以工作的东西,因为项目文件是在版本控制下的,每次我在笔记本电脑上工作时都要更改路径是一件非常痛苦的事情


如果这是一个*nix环境,我只需要创建一个符号链接就可以了。有什么想法吗?

您可以将其放在项目文件中:

 <PropertyGroup>
    <ProgramFiles32 Condition="Exists('$(PROGRAMFILES) (x86)')">$(PROGRAMFILES) (x86)</ProgramFiles32>
    <ProgramFiles32 Condition="$(ProgramFiles32) == ''">$(PROGRAMFILES)</ProgramFiles32>
  </PropertyGroup>

$(程序文件)(x86)
$(程序文件)
然后可以在生成后事件中使用
$(ProgramFiles32)

有关更多信息,请检查stackoverflow问题。

我在您提供的链接中使用了“$(MSBuildExtensionsPath32)\..”的可能重复项。很好,谢谢!