您可以选择是否将其放入宏中,但我实际上建议直接转到 .csproj 和 .sln 文件。在 .csproj 文件中,它们具有一系列指定构建配置的属性组,如下所示:
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|x86' ">
<PlatformTarget>x86</PlatformTarget>
<DebugSymbols>true</DebugSymbols>
<DebugType>full</DebugType>
<Optimize>false</Optimize>
<OutputPath>bin\Debug\</OutputPath>
<DefineConstants>DEBUG;TRACE</DefineConstants>
<ErrorReport>prompt</ErrorReport>
<WarningLevel>4</WarningLevel>
</PropertyGroup>
如果您创建一个简单的脚本/程序/等来遍历所有有问题的 .csproj 文件,并读取 .csproj xml 文件。在浏览它时,您可以简单地确保仅显示 2 个 PropertyGroups 定义配置。这两个配置将是您的调试/发布配置。此外,在同一个脚本中,您可以添加构建前/构建后事件,它们只是不同类型的属性组,例如:
<PropertyGroup>
<PostBuildEvent>xcopy $(TargetName).* "%25SEARCH1%25"\bin\ /i /y</PostBuildEvent>
</PropertyGroup>
注意:在 Visual Studio 关闭时将其作为脚本而不是作为宏执行此操作可能会更好,但我认为没有理由将其简单地包装到宏中也不起作用。