最近用VS2008开发Windows Mobile程序,使用C#、.NET Compact Framework,发现项目生成速度比较慢。用VS2008打开项目后,开始一段时间生成速度还能忍受,时间一长,编译速度巨慢,最慢达到5分钟之久,实在无法忍受。
决定找出VS2008生成时,做了什么花费时间的工作。从工具à选项进入“选项”对话框
选择“MSBuild项目生成输出详细信息”为“诊断”这样编译时,会输出具体执行了那些任务,花费了多少时间。
结果发现最花费时间的是
Platform Verification Task
http://blogs.msdn.com/vsdteam/archive/2006/09/15/756400.aspx有Platform Verification Task
的具体描述
参照上文的说明,修改文件
C:\Windows\Microsoft.NET\Framework\v3.5\Microsoft.CompactFramework.Common.targets
中
<Target
Name="PlatformVerificationTask" Condition="'$(SkipPlatformVerification)' == 'true'" >
<PlatformVerificationTask
PlatformFamilyName="$(PlatformFamilyName)"
PlatformID="$(PlatformID)"
SourceAssembly="@(IntermediateAssembly)"
ReferencePath="@(ReferencePath)"
TreatWarningsAsErrors="$(TreatWarningsAsErrors)"
PlatformVersion="$(TargetFrameworkVersion)"/>
</Target>
部分,红色文字为新增加的部分
于是项目生成速度大幅提高。