Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/303.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/.net/25.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 在VS2008中是否有方法将MSBuildBinPath设置为用于新项目?_C#_.net_Visual Studio 2008_Msbuild - Fatal编程技术网

C# 在VS2008中是否有方法将MSBuildBinPath设置为用于新项目?

C# 在VS2008中是否有方法将MSBuildBinPath设置为用于新项目?,c#,.net,visual-studio-2008,msbuild,C#,.net,Visual Studio 2008,Msbuild,我在一个旧的解决方案中做了一项工作。我已将一个新项目添加到此解决方案中。对于此解决方案,我们必须使用Visual Studio 2008,并且任何项目的.Net framework都不能超过2.0(因为安装的服务器有限制) 即使解决方案构建在我的机器上,我们仍然必须手动编辑项目(.csproj)文件,以专门设置一个属性: (这是我添加项目时自动生成的)需要更改为 为了促进一些神秘的构建设置,在这里工作的人都不理解也不想碰它 在这方面,我发现: $(MSBuildToolsPath)是$(MS

我在一个旧的解决方案中做了一项工作。我已将一个新项目添加到此解决方案中。对于此解决方案,我们必须使用Visual Studio 2008,并且任何项目的.Net framework都不能超过2.0(因为安装的服务器有限制)

即使解决方案构建在我的机器上,我们仍然必须手动编辑项目(
.csproj
)文件,以专门设置一个属性:

(这是我添加项目时自动生成的)需要更改为

为了促进一些神秘的构建设置,在这里工作的人都不理解也不想碰它

在这方面,我发现:

$(MSBuildToolsPath)是$(MSBuildBinPath)的特定于版本的替换项。旧属性仍然可用,但应弃用。VS2008在创建项目时将使用更新的路径。在VS2005之前,使用的是较旧的路径。将项目从VS2005升级到VS2008时,不会修改路径

这是否意味着此生成脚本中的某个位置的MSBuildBinPath路径是硬编码的


手动更改此选项容易出错,并且容易忘记(它建立在我的机器效果上)。是否有办法在VS2008中的某个位置设置它,以便此解决方案的新项目在默认情况下在
.csproj
文件中获得旧属性

您是否尝试过在生成服务器上安装.net 3.5和VS2008?您的生成服务器上可能只有.net 2.0和msbuild 2.0可用


我只看到一个选项来完成您所描述的:使用自定义项目模板。我相信这很容易完成(因为有一个默认模板,您只需要对默认模板稍加修改)

您是否尝试过在生成服务器上安装.net 3.5和VS2008?您的生成服务器上可能只有.net 2.0和msbuild 2.0可用


我只看到一个选项来完成您所描述的:使用自定义项目模板。我相信这很容易完成(因为有一个默认模板,您只需要对默认模板稍加修改)

+1用于指导我使用项目模板。看起来很有希望。如果有机会,我也会检查生成服务器。生成服务器确实安装了
.NET3.5
VS2008
。我认为你对项目模板的建议是可行的。谢谢(如果几天内没有人想出更好的方法,我会给你正确的答案)>>“构建服务器确实安装了.Net 3.5和VS2008”很可能,他们只是使用msbuild 2.0来执行构建。我会尝试将其更改为msbuild 3.5您是对的。生成服务器使用
MSBuild 2.0
。谢谢+1用于指导我使用项目模板。看起来很有希望。如果有机会,我也会检查生成服务器。生成服务器确实安装了
.NET3.5
VS2008
。我认为你对项目模板的建议是可行的。谢谢(如果几天内没有人想出更好的方法,我会给你正确的答案)>>“构建服务器确实安装了.Net 3.5和VS2008”很可能,他们只是使用msbuild 2.0来执行构建。我会尝试将其更改为msbuild 3.5您是对的。生成服务器使用
MSBuild 2.0
。谢谢