小编Mas*_*dow的帖子

是否可以在一个CMD行语句中设置多个环境变量?

我将PowerShell脚本设置为在MSBuild完成后执行。它使用在构建过程的POSTBUILD部分(构建目录等)中设置的环境变量。当前看起来像这样:

  set MAGE="C:\Program Files (x86)\Microsoft SDKs\Windows\v7.0A\Bin\NETFX 4.0 Tools\mage.exe"
  set APPFILE=$(TargetDir)$(TargetName).application
  set MANIFEST=$(TargetPath).manifest
  set CERT=$(ProjectDir)$(TargetName).pfx
  set PROJECTNAME=$(TargetName)
  set CONFIGURATION=$(ConfigurationName)
  set TARGETDIR=$(TargetDir)
  set TEAMBUILD=$False
  Powershell -File "$(ProjectDir)POSTBUILD.ps1"
Run Code Online (Sandbox Code Playgroud)

每个集合都在单独的线上运行,但仍在同一CMD实例中。

有没有办法我可以只用一行而不是7来一次设置多个变量?

msbuild powershell cmd visual-studio-2010 post-build

2
推荐指数
2
解决办法
5183
查看次数

在MSBuild中的属性组内部是否存在"if"类​​型语句?

我目前必须有两个独立的属性组,它们之间只有两个差异,根据条件设置为具有一个或另一个触发器.这就是我所拥有的:

<!--CAME FROM TEAMBUILD-->
  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' != 'Debug|AnyCPU' AND '$(Configuration)|$(Platform)' != 'Release|AnyCPU' AND '$(BuildingInsideVisualStudio)' != 'true' ">
    <PreBuildEvent>
    </PreBuildEvent>
    <PostBuildEvent>
      set MAGE="C:\Program Files (x86)\Microsoft SDKs\Windows\v7.0A\Bin\NETFX 4.0 Tools\mage.exe"
      set APPFILE=$(TargetDir)$(TargetName).application
      set MANIFEST=$(TargetPath).manifest
      set CERT=$(ProjectDir)$(TargetName).pfx
      set PROJECTNAME=$(TargetName)
      set CONFIGURATION=$(ConfigurationName)
      set TARGETDIR=$(TargetDir)
      set TEAMBUILD=$True
      Powershell -File "$(ProjectDir)POSTBUILD.ps1"
    </PostBuildEvent>
  </PropertyGroup>

  <!--CAME FROM PUBLISH COMMAND-->
  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' != 'Debug|AnyCPU' AND '$(Configuration)|$(Platform)' != 'Release|AnyCPU' AND '$(BuildingInsideVisualStudio)' == 'true' ">
    <PreBuildEvent>
    </PreBuildEvent>
    <PostBuildEvent>
      set MAGE="C:\Program Files (x86)\Microsoft SDKs\Windows\v7.0A\Bin\NETFX 4.0 Tools\mage.exe"
      set APPFILE=$(TargetDir)$(TargetName).application
      set MANIFEST=$(TargetPath).manifest
      set …
Run Code Online (Sandbox Code Playgroud)

msbuild cmd team-build post-build-event

0
推荐指数
2
解决办法
3766
查看次数