Msbuild 我可以从VS2015 IDE中覆盖解决方案级别上项目的输出路径吗?

Msbuild 我可以从VS2015 IDE中覆盖解决方案级别上项目的输出路径吗?,msbuild,Msbuild,我的目标是将解决方案中所有项目的OutputPath属性重写为$(SolutionDir)$(Configuration)\。我想在VS2015 IDE中设置这个 我不想更改.csproj或.vcxproj文件中的OutputPath(我知道如何做,我不想永久更改项目文件)。我只是需要一个本地的改变,暂时建立 我知道我可以通过在msbuild上设置/p:OutputPath=$(SolutionDir)$(Configuration)\从开发人员命令提示符中的命令行完成这一点。理想情况下,我们希

我的目标是将解决方案中所有项目的
OutputPath
属性重写为
$(SolutionDir)$(Configuration)\
。我想在VS2015 IDE中设置这个

我不想更改.csproj或.vcxproj文件中的OutputPath(我知道如何做,我不想永久更改项目文件)。我只是需要一个本地的改变,暂时建立


我知道我可以通过在msbuild上设置
/p:OutputPath=$(SolutionDir)$(Configuration)\
从开发人员命令提示符中的命令行完成这一点。理想情况下,我们希望能够在IDE中完成这项工作。这可能吗?

我能够在开发人员命令提示符下设置
OutputPath
,然后启动VS2015,打开解决方案并生成:


“C:\Program Files(x86)\Microsoft Visual Studio 14.0\Common7\IDE\devenv.exe”

执行此操作的典型方法是在每个项目中导入相同的msbuild文件,并在导入的文件中设置OutputPath。缺点:项目文件需要修改,它不是“从VS内部”。优点:只需执行一次,在命令行和VS中都可以使用,适用于所有人,非常灵活和可扩展。例如,您可以根据系统上是否存在某个文件、某个环境变量或主机名等来覆盖OuputPath


您给出的答案也很有效,虽然也不是来自内部VS。但对我来说,最大的缺点是,如果您将项目交给其他人,他们将不会有覆盖的输出路径,也就是说,此类修改无法真正置于版本控制中。当然,如果这就是你想要的,那也没关系。

你为什么否决这个?它可能对其他人有用。请为自己辩护。请投反对票,你的回答是有道理的。@PerryC我不明白你在这里做了什么。您是否使用自定义OutPutPath从开发人员命令提示符构建了sln,然后启动了一个新的VS实例?我完全同意这远远不是理想的。随着构建/编译器/项目的升级,这是一个临时解决方案。谢谢你的回答。