Visual Studio 带有if条件的预生成事件

brc7rcf0  于 2023-05-01  发布在  其他
关注(0)|答案(1)|浏览(125)

我想这样做:

if "$(TargetDir.Contains('BeamCutSoft_E'))" == true
    xcopy /E /Y "$(ProjectDir)LibsEssential" "$(TargetDir)"
else
    xcopy /E /Y "$(ProjectDir)LibsPremium" "$(TargetDir)"

但我得到了错误:
命令“if“False”== true xcopy /E /Y“C:\DEV\Repos_BeamcutSoft\Simulateur\C#\Beamcut\LibsEssential”“C:\Beamcut Apps\BeamCutSoft_P422_NewUI DEV”else xcopy /E /Y“C:\DEV\Repos_BeamcutSoft\Simulateur\C#\Beamcut\LibsPremium””C:\Beamcut Apps\BeamCutSoft_P422_NewUI DEV””退出,代码为255。

s2j5cfk0

s2j5cfk01#

我找到了一个不同的方法来实现我想要的:
在我的CSPROj中
我这样说:

<ItemGroup Condition="$(TargetDir.Contains('BeamCutSoft_E'))">
    <Reference Include="Caliburn.Micro, Version=1.5.2.0, Culture=neutral, PublicKeyToken=8e5891231f2ed21f, processorArchitecture=MSIL">
      <SpecificVersion>False</SpecificVersion>
      <HintPath>.\LibsEssential\Caliburn.Micro.dll</HintPath>
    </Reference>
  </ItemGroup>
  <ItemGroup Condition="$(TargetDir.Contains('BeamCutSoft_P'))">
    <Reference Include="Caliburn.Micro, Version=1.5.2.0, Culture=neutral, PublicKeyToken=8e5891231f2ed21f, processorArchitecture=MSIL">
      <SpecificVersion>False</SpecificVersion>
      <HintPath>.\LibsPremium\Caliburn.Micro.dll</HintPath>
    </Reference>
  </ItemGroup>

相关问题