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