4

我想将 VS2012 中 .NET 解决方案中所有二进制文件的输出路径设置为每个用户的另一个位置。

我发现我可以手动修改 .csproj.user 文件,使其包含类似的行

<OutputPath>C:\exe\MyApp\Debugx86</OutputPath>

这会将我的主应用程序的输出重定向到新的输出文件夹。但是一旦我这样做,就会出现两个问题:

  1. 清洁解决方案不再删除输出文件
  2. 我无法启动调试器,因为它需要旧位置的 exe。

所以我的问题是:是否可以根据编译解决方案的用户偏好告诉 VS2012 将二进制文件放到不同的位置?

4

1 回答 1

1

您是否愿意为所有用户在同一个地方构建输出,然后让 build 命令根据每个用户将输出复制到不同的目录?如果是这样,您可以将构建后命令添加到主项目文件,例如:

<Target Name="AfterBuild">
    <PropertyGroup>
        <YourSourceDirectory>..\SomeSourceDirectory</YourSourceDirectory>
        <YourDestinationDirectory>..\SomeDestinationDirectory</YourDestinationDirectory>
    </PropertyGroup>
    <Copy SourceFiles="@(YourFilesToCopy)" DestinationFiles="@(YourFilesToCopy->'$(YourDestinationDirectory)\%(RecursiveDir)%(Filename)%(Extension)')" />
</Target>
于 2013-06-14T21:40:47.087 回答