如果您遵循 Hans Passant 评论中的建议并将 MSBuild 设置为诊断输出,它将更清楚地了解所花费的时间。如果您发现您的构建挂在许可编译器 (LC.exe) 上,那么这可能是由于它尝试调用服务器并超时。您可以通过更改 machine.config 来解决此问题 -
编辑 c:\windows\microsoft.net\framework\v2.0.50727\config\machine.config,并添加以下键:
<configuration>
<runtime>
<generatePublisherEvidence enabled="false"/>
EDIT://
根据下面的评论,我做了一些挖掘。平台验证任务有一个已知问题,即在 VS2008 中运行速度非常慢。有关它的更多详细信息可以在这里找到:
http://blogs.msdn.com/b/vsdteam/archive/2006/09/15/756400.aspx
解决这个问题的一种方法是在构建中禁用该任务本身。去做这个
1)打开文件:
%windir%\Microsoft.NET\Framework\v2.0.50727\Microsoft.CompactFramework.Common.Targets
进行编辑。
2)转到显示以下内容的行:
Name="PlatformVerificationTask">
并将其更改为:
Name="PlatformVerificationTask" Condition="'$(SkipPlatformVerification)' != 'true'">
3) 将 SkipPlatformVerification 环境变量添加到系统并将其设置为“true”(要重新启用平台验证,请将环境变量设置为“false”)。如果您需要设置环境变量的帮助,请阅读http://vlaurie.com/computers2/Articles/environment.htm。如果您不想添加环境变量,您可以将条件交换为始终为 false 的内容(即 Condition="'true' == 'false'")