<?xml version="1.0" encoding="UTF-8" ?>
<?xml-stylesheet type="text/xsl" href="http://blogs.msdn.com/utility/FeedStylesheets/rss.xsl" media="screen"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/" xmlns:wfw="http://wellformedweb.org/CommentAPI/"><channel><title>Code Analysis Team Blog : Tips and Tricks</title><link>http://blogs.msdn.com/fxcop/archive/tags/Tips+and+Tricks/default.aspx</link><description>Tags: Tips and Tricks</description><dc:language>en-US</dc:language><generator>CommunityServer 2.1 SP1 (Build: 61025.2)</generator><item><title>Fun with Code Analysis Rule Sets</title><link>http://blogs.msdn.com/fxcop/archive/2008/11/12/fun-with-code-analysis-rulesets.aspx</link><pubDate>Wed, 12 Nov 2008 22:55:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:9064155</guid><dc:creator>cristend</dc:creator><slash:comments>5</slash:comments><comments>http://blogs.msdn.com/fxcop/comments/9064155.aspx</comments><wfw:commentRss>http://blogs.msdn.com/fxcop/commentrss.aspx?PostID=9064155</wfw:commentRss><wfw:comment>http://blogs.msdn.com/fxcop/rsscomments.aspx?PostID=9064155</wfw:comment><description>&lt;P&gt;Two weeks ago, I introduced you to Visual Studio 2010 September '08 CTP (Community Technology Preview). This CTP is available as a Virtual PC (VPC) image which can be downloaded at &lt;A href="http://go.microsoft.com/fwlink/?LinkId=129231" mce_href="http://go.microsoft.com/fwlink/?LinkId=129231"&gt;&lt;FONT color=#0000ff&gt;http://go.microsoft.com/fwlink/?LinkId=129231&lt;/FONT&gt;&lt;/A&gt;. The goal of the Community Technology Preview is to obtain feedback from our customers on the new scenarios we have enabled.&amp;nbsp; If you haven't already downloaded the CTP, do it now and take it out for a spin.&amp;nbsp; &lt;/P&gt;
&lt;P&gt;There&amp;nbsp;are many new cool features with the CTP such as an Historical Debugger and&amp;nbsp;Impact Analysis of&amp;nbsp;code changes, but today we are going to focus on &lt;STRONG&gt;Rule Sets&lt;/STRONG&gt; for code analysis. (For an overview of all the neat stuff happening in code analysis, check out this PDC video&amp;nbsp;&lt;SPAN style="FONT-SIZE: 11pt; FONT-FAMILY: 'Calibri','sans-serif'; mso-bidi-font-family: 'Times New Roman'; mso-fareast-font-family: Calibri; mso-ansi-language: EN-US; mso-fareast-language: EN-US; mso-bidi-language: AR-SA; mso-fareast-theme-font: minor-latin"&gt;&lt;A href="http://mschnlnine.vo.llnwd.net/d1/pdc08/WMV-HQ/TL60.wmv"&gt;http://mschnlnine.vo.llnwd.net/d1/pdc08/WMV-HQ/TL60.wmv&lt;/A&gt;&amp;nbsp;&lt;/SPAN&gt;)&amp;nbsp;&amp;nbsp;Configuring code analysis in Visual Studio 2008 and earlier versions required evaluating each individual rule to determine whether it was important enough to turn on and fix for your project. This might be a very time-consuming process that made it difficult to make sure that the most important problems were identified and fixed. With rule sets, code analysis can now be configured much more quickly and easily with sets of rules that are targeted at specific scenarios or areas of emphasis. Let's take a look at&amp;nbsp;how this works.&lt;/P&gt;
&lt;P&gt;The following scenario comes from our CTP walkthrough.&amp;nbsp; You can find the walkthrough and more details when you download the CTP as described above.&amp;nbsp; Let's assume that you have the &lt;EM&gt;&lt;STRONG&gt;DinnerNow – Kiosk&lt;/STRONG&gt;&lt;/EM&gt; solution open and is the active project.&amp;nbsp; On the &lt;STRONG&gt;Analyze&lt;/STRONG&gt; menu, click &lt;STRONG&gt;Configure Code Analysis&lt;/STRONG&gt; &lt;STRONG&gt;for DinnerNow.Restaurants.Kiosk&lt;/STRONG&gt;.&amp;nbsp; The property page for Code Analysis is displayed:&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;IMG title="Code Analysis Properties" style="WIDTH: 590px; HEIGHT: 376px" height=376 alt="Code Analysis Properties" hspace=1 src="http://blogs.msdn.com/photos/codeanalysis/images/9064354/original.aspx" width=590 vspace=1 border=1 mce_src="http://blogs.msdn.com/photos/codeanalysis/images/9064354/original.aspx"&gt;&lt;/P&gt;
&lt;P class=TextinList1 style="MARGIN: 3pt 0in 3pt 0.25in"&gt;&lt;FONT face=Verdana&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;This screen tells us that &lt;STRONG&gt;Microsoft All Rules&lt;/STRONG&gt; will be executed when we run code analysis, but what if we didn't want to run&amp;nbsp;every Microsoft rule?&amp;nbsp; What if we have a specific scenario we wish to target?&amp;nbsp; We can change which rule set to run by clicking on &lt;STRONG&gt;Open&lt;/STRONG&gt; which brings up:&lt;/P&gt;
&lt;P&gt;&lt;IMG title="Add or Remove Rule Sets" style="WIDTH: 590px; HEIGHT: 387px" height=387 alt="Add or Remove Rule Sets" hspace=1 src="http://blogs.msdn.com/photos/codeanalysis/images/9064400/original.aspx" width=590 vspace=1 border=1 mce_src="http://blogs.msdn.com/photos/codeanalysis/images/9064400/original.aspx"&gt;&lt;/P&gt;
&lt;P&gt;We can select which rule set(s) by simply selecting or deselecting the appropriate box.&amp;nbsp; Notice that each rule set has a brief description of the types of rules within the rule set.&amp;nbsp; Further, you can open up each individual rule set and see the specific rules that make up the rules sets.&amp;nbsp; You can also turn on or off individual rules within a rule set.&amp;nbsp; Finally, you can adjust the type of action a rule will trigger.&amp;nbsp; In the past, code analysis rules&amp;nbsp;have been limited to build Warnings, but now you can elevate code analysis rules to build Errors.&lt;/P&gt;
&lt;P&gt;As you can see, rules sets provide a powerful way to focus code analysis on the scenarios and rules that matter most to you.&amp;nbsp; You can also create custom rule sets based on your specific needs.&amp;nbsp; We wont go into it today, but if you download the CTP, the Walkthrough explains how to customize a rule set.&lt;/P&gt;
&lt;P&gt;Give it a try and let us know what you think.&lt;/P&gt;
&lt;P&gt;Cris&lt;/P&gt;
&lt;P mce_keep="true"&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=9064155" width="1" height="1"&gt;</description><category domain="http://blogs.msdn.com/fxcop/archive/tags/Custom+Rules/default.aspx">Custom Rules</category><category domain="http://blogs.msdn.com/fxcop/archive/tags/Community/default.aspx">Community</category><category domain="http://blogs.msdn.com/fxcop/archive/tags/Rules/default.aspx">Rules</category><category domain="http://blogs.msdn.com/fxcop/archive/tags/Tips+and+Tricks/default.aspx">Tips and Tricks</category><category domain="http://blogs.msdn.com/fxcop/archive/tags/Code+Analysis/default.aspx">Code Analysis</category><category domain="http://blogs.msdn.com/fxcop/archive/tags/FxCop/default.aspx">FxCop</category><category domain="http://blogs.msdn.com/fxcop/archive/tags/Code+Analysis+Policy/default.aspx">Code Analysis Policy</category><category domain="http://blogs.msdn.com/fxcop/archive/tags/CodeCommunit+Analysis/default.aspx">CodeCommunit Analysis</category></item><item><title>Reporting Code Analysis Defect Counts</title><link>http://blogs.msdn.com/fxcop/archive/2008/01/02/reporting-code-analysis-defect-counts.aspx</link><pubDate>Wed, 02 Jan 2008 23:10:06 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:6958609</guid><dc:creator>conorm</dc:creator><slash:comments>10</slash:comments><comments>http://blogs.msdn.com/fxcop/comments/6958609.aspx</comments><wfw:commentRss>http://blogs.msdn.com/fxcop/commentrss.aspx?PostID=6958609</wfw:commentRss><wfw:comment>http://blogs.msdn.com/fxcop/rsscomments.aspx?PostID=6958609</wfw:comment><description>&lt;ul&gt;   &lt;p&gt;Code analysis defect counts are available in the cube that is part of the &lt;a href="http://forums.microsoft.com/MSDN/ShowForum.aspx?ForumID=480&amp;amp;SiteID=1"&gt;TFS Data Warehouse&lt;/a&gt;. This post shows you how to hook up Excel to show code analysis counts in a &lt;a href="http://office.microsoft.com/en-us/excel/HA010346321033.aspx"&gt;pivot table&lt;/a&gt;.&lt;/p&gt;    &lt;p&gt;First off you need to connect Excel up to the data warehouse that has the data. Under the &lt;strong&gt;Data&lt;/strong&gt; tab in Excel select &lt;strong&gt;From Other Sources, From Analysis Services&lt;/strong&gt;.&lt;/p&gt;    &lt;p&gt;&lt;a href="http://blogs.msdn.com/blogfiles/fxcop/WindowsLiveWriter/ReportingCodeAnalysisDefectCounts_A7B3/clip_image001_2.png"&gt;&lt;img style="border-right: 0px; border-top: 0px; border-left: 0px; border-bottom: 0px" height="213" alt="clip_image001" src="http://blogs.msdn.com/blogfiles/fxcop/WindowsLiveWriter/ReportingCodeAnalysisDefectCounts_A7B3/clip_image001_thumb.png" width="435" border="0" /&gt;&lt;/a&gt;&lt;/p&gt;    &lt;p&gt;Then you need to give the name of the server with the data warehouse. In the standalone TFS case this will be whatever machine is running TFS. Assuming you have read permissions with your Windows account you can click &lt;strong&gt;Next&lt;/strong&gt;, otherwise enter a user name and password that has access to the server and click &lt;strong&gt;Next&lt;/strong&gt;.&lt;/p&gt;    &lt;p&gt;&lt;a href="http://blogs.msdn.com/blogfiles/fxcop/WindowsLiveWriter/ReportingCodeAnalysisDefectCounts_A7B3/clip_image002_2.png"&gt;&lt;img style="border-right: 0px; border-top: 0px; border-left: 0px; border-bottom: 0px" height="265" alt="clip_image002" src="http://blogs.msdn.com/blogfiles/fxcop/WindowsLiveWriter/ReportingCodeAnalysisDefectCounts_A7B3/clip_image002_thumb.png" width="346" border="0" /&gt;&lt;/a&gt;&lt;/p&gt;    &lt;p&gt;Then, select the database (usually TfsWarehouse) and select the &lt;strong&gt;Build&lt;/strong&gt; table.&lt;/p&gt;    &lt;p&gt;&lt;a href="http://blogs.msdn.com/blogfiles/fxcop/WindowsLiveWriter/ReportingCodeAnalysisDefectCounts_A7B3/clip_image003_2.png"&gt;&lt;img style="border-right: 0px; border-top: 0px; border-left: 0px; border-bottom: 0px" height="263" alt="clip_image003" src="http://blogs.msdn.com/blogfiles/fxcop/WindowsLiveWriter/ReportingCodeAnalysisDefectCounts_A7B3/clip_image003_thumb.png" width="356" border="0" /&gt;&lt;/a&gt;&lt;/p&gt;    &lt;p&gt;Click &lt;strong&gt;Next&lt;/strong&gt; and then supply whatever additional information that will help you remember this data connection.&lt;/p&gt;    &lt;p&gt;&lt;a href="http://blogs.msdn.com/blogfiles/fxcop/WindowsLiveWriter/ReportingCodeAnalysisDefectCounts_A7B3/clip_image004_2.png"&gt;&lt;img style="border-right: 0px; border-top: 0px; border-left: 0px; border-bottom: 0px" height="313" alt="clip_image004" src="http://blogs.msdn.com/blogfiles/fxcop/WindowsLiveWriter/ReportingCodeAnalysisDefectCounts_A7B3/clip_image004_thumb.png" width="361" border="0" /&gt;&lt;/a&gt;&lt;/p&gt;    &lt;p&gt;Click &lt;strong&gt;Finish&lt;/strong&gt;. Then define how you want to show the data in Excel - e.g. a pivot table.&lt;/p&gt;    &lt;p&gt;&lt;a href="http://blogs.msdn.com/blogfiles/fxcop/WindowsLiveWriter/ReportingCodeAnalysisDefectCounts_A7B3/clip_image005_2.png"&gt;&lt;img style="border-right: 0px; border-top: 0px; border-left: 0px; border-bottom: 0px" height="324" alt="clip_image005" src="http://blogs.msdn.com/blogfiles/fxcop/WindowsLiveWriter/ReportingCodeAnalysisDefectCounts_A7B3/clip_image005_thumb.png" width="367" border="0" /&gt;&lt;/a&gt;&lt;/p&gt;    &lt;p&gt;Click &lt;strong&gt;OK&lt;/strong&gt; which gives you the following:&lt;/p&gt;    &lt;p&gt;&lt;a href="http://blogs.msdn.com/blogfiles/fxcop/WindowsLiveWriter/ReportingCodeAnalysisDefectCounts_A7B3/clip_image006_2.png"&gt;&lt;img style="border-right: 0px; border-top: 0px; border-left: 0px; border-bottom: 0px" height="315" alt="clip_image006" src="http://blogs.msdn.com/blogfiles/fxcop/WindowsLiveWriter/ReportingCodeAnalysisDefectCounts_A7B3/clip_image006_thumb.png" width="372" border="0" /&gt;&lt;/a&gt;&lt;/p&gt;    &lt;p&gt;In the &lt;strong&gt;PivotTable Field List&lt;/strong&gt;, Expand &lt;strong&gt;Build Project&lt;/strong&gt; where you will find two fields: &lt;strong&gt;Static Analysis Errors&lt;/strong&gt; and &lt;strong&gt;Static Analysis Warnings&lt;/strong&gt;:&lt;/p&gt;    &lt;p&gt;&lt;a href="http://blogs.msdn.com/blogfiles/fxcop/WindowsLiveWriter/ReportingCodeAnalysisDefectCounts_A7B3/clip_image007_2.png"&gt;&lt;img style="border-right: 0px; border-top: 0px; border-left: 0px; border-bottom: 0px" height="143" alt="clip_image007" src="http://blogs.msdn.com/blogfiles/fxcop/WindowsLiveWriter/ReportingCodeAnalysisDefectCounts_A7B3/clip_image007_thumb.png" width="234" border="0" /&gt;&lt;/a&gt;&lt;/p&gt;    &lt;p&gt;You can click the checkboxes to add these to the values for your table. In most cases &lt;strong&gt;Static Analysis Warnings&lt;/strong&gt; would be the most useful since &lt;strong&gt;Static Analysis Errors&lt;/strong&gt; would typically stop the build.&lt;/p&gt;    &lt;p&gt;To complete the picture you can play with the pivot table and pivot and filter as you see fit. As a simple example you can add the &lt;strong&gt;Build&lt;/strong&gt; field:&lt;/p&gt;    &lt;p&gt;&lt;a href="http://blogs.msdn.com/blogfiles/fxcop/WindowsLiveWriter/ReportingCodeAnalysisDefectCounts_A7B3/clip_image008_2.png"&gt;&lt;img style="border-right: 0px; border-top: 0px; border-left: 0px; border-bottom: 0px" height="107" alt="clip_image008" src="http://blogs.msdn.com/blogfiles/fxcop/WindowsLiveWriter/ReportingCodeAnalysisDefectCounts_A7B3/clip_image008_thumb.png" width="235" border="0" /&gt;&lt;/a&gt;&lt;/p&gt;    &lt;p&gt;Which will give you one row per build in the pivot table.&lt;/p&gt;    &lt;p&gt;&lt;a href="http://blogs.msdn.com/blogfiles/fxcop/WindowsLiveWriter/ReportingCodeAnalysisDefectCounts_A7B3/clip_image009_2.png"&gt;&lt;img style="border-right: 0px; border-top: 0px; border-left: 0px; border-bottom: 0px" height="165" alt="clip_image009" src="http://blogs.msdn.com/blogfiles/fxcop/WindowsLiveWriter/ReportingCodeAnalysisDefectCounts_A7B3/clip_image009_thumb.png" width="244" border="0" /&gt;&lt;/a&gt;&lt;/p&gt;    &lt;p&gt;Of course this data can be combined with other build data and charted etc. according to your needs. We are considering what reporting to provide in future versions so would love to hear your feedback on this feature and what you would like to see.&lt;/p&gt; &lt;/ul&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=6958609" width="1" height="1"&gt;</description><category domain="http://blogs.msdn.com/fxcop/archive/tags/Tips+and+Tricks/default.aspx">Tips and Tricks</category><category domain="http://blogs.msdn.com/fxcop/archive/tags/Team+System/default.aspx">Team System</category><category domain="http://blogs.msdn.com/fxcop/archive/tags/Visual+Studio+2008/default.aspx">Visual Studio 2008</category><category domain="http://blogs.msdn.com/fxcop/archive/tags/Code+Analysis/default.aspx">Code Analysis</category><category domain="http://blogs.msdn.com/fxcop/archive/tags/tsbt-dev/default.aspx">tsbt-dev</category></item><item><title>TIP: How to change the (Orcas) Managed Code Analysis naming/design rules to fire on internals</title><link>http://blogs.msdn.com/fxcop/archive/2007/05/08/tip-how-to-change-the-orcas-managed-code-analysis-naming-design-rules-to-fire-on-internals.aspx</link><pubDate>Tue, 08 May 2007 18:00:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:1350587</guid><dc:creator>David M. Kean</dc:creator><slash:comments>1</slash:comments><comments>http://blogs.msdn.com/fxcop/comments/1350587.aspx</comments><wfw:commentRss>http://blogs.msdn.com/fxcop/commentrss.aspx?PostID=1350587</wfw:commentRss><wfw:comment>http://blogs.msdn.com/fxcop/rsscomments.aspx?PostID=1350587</wfw:comment><description>&lt;P&gt;A&amp;nbsp;while ago&amp;nbsp;&lt;A class="" href="http://blogs.msdn.com/fxcop/archive/2006/08/08/tip-how-to-change-the-fxcop-naming-design-rules-to-fire-on-internals-david-kean.aspx" mce_href="http://blogs.msdn.com/fxcop/archive/2006/08/08/tip-how-to-change-the-fxcop-naming-design-rules-to-fire-on-internals-david-kean.aspx"&gt;I mentioned&lt;/A&gt; that&amp;nbsp;FxCop&amp;nbsp;(and hence Managed Code Analysis) naming and design rules only fire on publicly visible types and members. &lt;/P&gt;
&lt;P&gt;As you may recall, there were a couple of reason for this:&lt;/P&gt;
&lt;UL&gt;
&lt;LI&gt;The &lt;A href="http://msdn2.microsoft.com/en-us/library/ms229042.aspx" mce_href="http://msdn2.microsoft.com/en-us/library/ms229042.aspx"&gt;.NET Framework Design Guidelines&lt;/A&gt;, which&amp;nbsp;FxCop/Managed Code Analysis enforces,&amp;nbsp;only contains&amp;nbsp;guidelines&amp;nbsp;for publicly visible API. What internal Microsoft teams (and you) do with their internal types and members is completely up to them.&lt;/LI&gt;
&lt;LI&gt;Noise. If you tend to wrap a lot of native types and members, then&amp;nbsp;this internal API could&amp;nbsp;be potentially fire numerous violations.&lt;/LI&gt;&lt;/UL&gt;
&lt;P&gt;In that same post, I also showed how to&amp;nbsp;override this behavior in in FxCop. Now, since then, I've been asked by a few readers on whether it was possible to do this within Visual Studio 2005, unfortunately, the answer up until now was no.&lt;/P&gt;
&lt;P&gt;However, the good news is that in the&amp;nbsp;newly released&amp;nbsp;&lt;A class="" href="http://msdn2.microsoft.com/en-us/vstudio/aa700831.aspx" mce_href="http://msdn2.microsoft.com/en-us/vstudio/aa700831.aspx"&gt;Visual Studio 'Orcas' Beta 1&lt;/A&gt;, we sneaked in a small feature in that allows you to override this on a per-project basis. &lt;/P&gt;
&lt;P&gt;To turn it on, simply do the following:&lt;/P&gt;
&lt;OL&gt;
&lt;LI&gt;Using Visual Studio, open your project&lt;/LI&gt;
&lt;LI&gt;In &lt;STRONG&gt;Solution Explorer&lt;/STRONG&gt;, right-click the project and choose &lt;STRONG&gt;Unload Project&lt;/STRONG&gt;, answering &lt;STRONG&gt;Yes&lt;/STRONG&gt; to any prompt to save changes &lt;/LI&gt;
&lt;LI&gt;In &lt;STRONG&gt;Solution Explorer&lt;/STRONG&gt;, right-click the project and choose &lt;STRONG&gt;Edit&lt;/STRONG&gt; &lt;/LI&gt;
&lt;LI&gt;Under the first &lt;STRONG&gt;&amp;lt;PropertyGroup&amp;gt;&lt;/STRONG&gt; element, add a new &lt;STRONG&gt;&amp;lt;CodeAnalysisOverrideRuleVisibilities&amp;gt;&lt;/STRONG&gt; element with its value set to &lt;STRONG&gt;true&lt;/STRONG&gt;:&lt;BR&gt;&lt;BR&gt;
&lt;TABLE class=MsoNormalTable style="BORDER-RIGHT: medium none; BORDER-TOP: medium none; BACKGROUND: #eeeeee; MARGIN: auto; BORDER-LEFT: medium none; BORDER-BOTTOM: medium none; BORDER-COLLAPSE: collapse" cellSpacing=0 cellPadding=0 border=1 Table class="MsoNormalTable"&gt;
&lt;TBODY&gt;
&lt;TR&gt;
&lt;TD class="" style="BORDER-RIGHT: #cccccc 1pt solid; BORDER-TOP: #cccccc 1pt solid; BORDER-LEFT: #cccccc 1pt solid; BORDER-BOTTOM: #cccccc 1pt solid; BACKGROUND-COLOR: transparent" vAlign=top&gt;
&lt;P style="MARGIN: 0in 0in 0pt"&gt;&lt;SPAN style="FONT-SIZE: 8pt; COLOR: blue; FONT-FAMILY: 'Courier New'"&gt;&amp;nbsp;&amp;lt;&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 8pt; COLOR: maroon; FONT-FAMILY: 'Courier New'"&gt;Project&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 8pt; COLOR: blue; FONT-FAMILY: 'Courier New'"&gt; &lt;SPAN style="FONT-SIZE: 8pt; COLOR: red; FONT-FAMILY: 'Courier New'"&gt;DefaultTargets&lt;SPAN style="FONT-SIZE: 8pt; COLOR: blue; FONT-FAMILY: 'Courier New'"&gt;="Build"&lt;/SPAN&gt; &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 8pt; COLOR: red; FONT-FAMILY: 'Courier New'"&gt;xmlns&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 8pt; COLOR: blue; FONT-FAMILY: 'Courier New'"&gt;=&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 8pt; COLOR: black; FONT-FAMILY: 'Courier New'"&gt;"&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 8pt; COLOR: blue; FONT-FAMILY: 'Courier New'"&gt;http://schemas.microsoft.com/developer/msbuild/2003&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 8pt; COLOR: black; FONT-FAMILY: 'Courier New'"&gt;"&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 8pt; COLOR: blue; FONT-FAMILY: 'Courier New'"&gt;&amp;gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;BR&gt;&amp;nbsp;&amp;nbsp; &amp;lt;&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 8pt; COLOR: maroon; FONT-FAMILY: 'Courier New'"&gt;PropertyGroup&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 8pt; COLOR: blue; FONT-FAMILY: 'Courier New'"&gt;&amp;gt;&lt;BR&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&amp;lt;&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 8pt; COLOR: maroon; FONT-FAMILY: 'Courier New'"&gt;CodeAnalysisOverrideRuleVisibilities&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 8pt; COLOR: blue; FONT-FAMILY: 'Courier New'"&gt;&amp;gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 8pt; COLOR: black; FONT-FAMILY: 'Courier New'"&gt;true&lt;EM&gt;&amp;lt;&lt;/EM&gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 8pt; COLOR: blue; FONT-FAMILY: 'Courier New'"&gt;/&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 8pt; COLOR: maroon; FONT-FAMILY: 'Courier New'"&gt;&lt;SPAN style="FONT-SIZE: 8pt; COLOR: maroon; FONT-FAMILY: 'Courier New'"&gt;&lt;SPAN style="FONT-SIZE: 8pt; COLOR: maroon; FONT-FAMILY: 'Courier New'"&gt;CodeAnalysisOverrideRuleVisibilities&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 8pt; COLOR: blue; FONT-FAMILY: 'Courier New'"&gt;&amp;gt;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;SPAN style="FONT-SIZE: 8pt; COLOR: black; FONT-FAMILY: 'Courier New'"&gt;[..]&lt;/SPAN&gt;&lt;BR&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&amp;lt;/&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 8pt; COLOR: maroon; FONT-FAMILY: 'Courier New'"&gt;PropertyGroup&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 8pt; COLOR: blue; FONT-FAMILY: 'Courier New'"&gt;&amp;gt;&lt;BR&gt;&amp;nbsp;&amp;lt;/&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 8pt; COLOR: maroon; FONT-FAMILY: 'Courier New'"&gt;Project&lt;SPAN style="FONT-SIZE: 8pt; COLOR: blue; FONT-FAMILY: 'Courier New'"&gt;&amp;gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;&lt;BR&gt;&lt;/LI&gt;
&lt;LI&gt;In&lt;STRONG&gt; Solution Explorer&lt;/STRONG&gt;, right-click the project and choose &lt;STRONG&gt;Reload Project&lt;/STRONG&gt;, answering &lt;STRONG&gt;Yes &lt;/STRONG&gt;to both prompts&lt;/LI&gt;&lt;/OL&gt;
&lt;P&gt;The naming and design rules (such as &lt;A class="" href="http://msdn2.microsoft.com/en-us/library/ms182240(VS.80).aspx" mce_href="http://msdn2.microsoft.com/en-us/library/ms182240(VS.80).aspx"&gt;IdentifiersShouldBeCasedCorrectly&lt;/A&gt; and &lt;A class="" href="http://msdn2.microsoft.com/en-us/library/bb264492(vs.80).aspx" mce_href="http://msdn2.microsoft.com/en-us/library/bb264492(vs.80).aspx"&gt;IdentifiersShouldBeSpelledCorrectly&lt;/A&gt;) will now run against all types and members, not just those visible outside of the assembly. &lt;/P&gt;
&lt;P&gt;If you want to enable&amp;nbsp;this for all&amp;nbsp;your projects,&amp;nbsp;see the following: &lt;A class="" href="http://blogs.msdn.com/fxcop/archive/2006/11/16/faq-how-do-i-share-managed-code-analysis-rule-settings-over-multiple-projects-david-kean.aspx" mce_href="http://blogs.msdn.com/fxcop/archive/2006/11/16/faq-how-do-i-share-managed-code-analysis-rule-settings-over-multiple-projects-david-kean.aspx"&gt;FAQ: How do I share Managed Code Analysis rule settings over multiple projects?&lt;/A&gt;.&lt;/P&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=1350587" width="1" height="1"&gt;</description><category domain="http://blogs.msdn.com/fxcop/archive/tags/Rules/default.aspx">Rules</category><category domain="http://blogs.msdn.com/fxcop/archive/tags/Tips+and+Tricks/default.aspx">Tips and Tricks</category><category domain="http://blogs.msdn.com/fxcop/archive/tags/Team+System/default.aspx">Team System</category><category domain="http://blogs.msdn.com/fxcop/archive/tags/Visual+Studio+2008/default.aspx">Visual Studio 2008</category><category domain="http://blogs.msdn.com/fxcop/archive/tags/Code+Analysis/default.aspx">Code Analysis</category><category domain="http://blogs.msdn.com/fxcop/archive/tags/Configuration/default.aspx">Configuration</category></item><item><title>TIP: Scope the Code Analysis Policy to apply to specific source control paths/file types</title><link>http://blogs.msdn.com/fxcop/archive/2007/01/30/tip-scope-the-code-analysis-policy-to-apply-to-specific-source-control-paths-file-types.aspx</link><pubDate>Tue, 30 Jan 2007 19:00:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:1554234</guid><dc:creator>ravkaur</dc:creator><slash:comments>1</slash:comments><comments>http://blogs.msdn.com/fxcop/comments/1554234.aspx</comments><wfw:commentRss>http://blogs.msdn.com/fxcop/commentrss.aspx?PostID=1554234</wfw:commentRss><wfw:comment>http://blogs.msdn.com/fxcop/rsscomments.aspx?PostID=1554234</wfw:comment><description>&lt;P&gt;On the forums, we have had posts&amp;nbsp; from customers who want to customize their code analysis policy to skip certain file types such as .sql, docs etc. This is because the policy will block checkins even though code analysis doesn’t apply to those files.[ See thread:&amp;nbsp; &lt;A href="http://forums.microsoft.com/MSDN/ShowPost.aspx?PostID=1080300&amp;amp;SiteID=1" mce_href="http://forums.microsoft.com/MSDN/ShowPost.aspx?PostID=1080300&amp;amp;SiteID=1"&gt;http://forums.microsoft.com/MSDN/ShowPost.aspx?PostID=1080300&amp;amp;SiteID=1&lt;/A&gt; ] There is now a way to configure code analysis policy to apply to specific source control paths/file types. Check out the tool on gotdotnet that helps you to do so. &lt;A href="http://www.gotdotnet.com/codegallery/codegallery.aspx?id=96d7da50-0d61-4230-9af9-49684ae9881e" mce_href="http://www.gotdotnet.com/codegallery/codegallery.aspx?id=96d7da50-0d61-4230-9af9-49684ae9881e"&gt;http://www.gotdotnet.com/codegallery/codegallery.aspx?id=96d7da50-0d61-4230-9af9-49684ae9881e&lt;/A&gt;&lt;/P&gt;
&lt;P&gt;Here's what you need to do (Part of the steps are also in the readme for the custom path policy)&lt;/P&gt;
&lt;P&gt;a) Download the custom code analysis policy from the location specified on the link. This is a project and you will need to build it.&lt;/P&gt;
&lt;P&gt;b) Launch Regedit (or any other registry editor of choice), and navigate to the following key: HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\VisualStudio\8.0\TeamFoundation\SourceControl\Checkin Policies &lt;/P&gt;
&lt;P&gt;c) Add a string value called "CustomPathPolicy" – set the value to the path where the DLL is located, such as: C:\SD_TIDM\Technical Integration\CustomPathPolicy\Extensibility\bin\Debug\CustomPathPolicy.dll &lt;/P&gt;
&lt;P&gt;Once the registry key is set up, follow these steps to set up the custom policy.&amp;nbsp;&lt;/P&gt;
&lt;OL&gt;
&lt;LI&gt;Add code analysis policy to the team project via Team Project Settings -&amp;gt; Source Control -&amp;gt; Check in Policy&lt;/LI&gt;
&lt;LI&gt;Click "Add" again and select "Custom Path Filter" item, which will invoke the Edit dialog.&lt;/LI&gt;
&lt;LI&gt;From the dropdown, select 'Code Analysis'&lt;/LI&gt;
&lt;LI&gt;Enter the regex path filters to which the policy should apply to, click add, repeat as needed.&lt;/LI&gt;
&lt;LI&gt;Click OK to save the settings.&lt;/LI&gt;
&lt;LI&gt;Disable the original code analysis policy set in step 1). If this is not done, the policy will be evaluated twice.&lt;/LI&gt;&lt;/OL&gt;
&lt;P&gt;Once you have this set up, the code analysis policy will apply to only paths that you have specified. One thing to keep in mind is that migrating code analysis settings to solution does not respect the paths set in the custom path policy. i.e. Migrating code analysis policy settings to solution will migrate to all projects within the solution, not just the ones specified in the custom path policy.&amp;nbsp; &lt;BR&gt;&lt;/P&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=1554234" width="1" height="1"&gt;</description><category domain="http://blogs.msdn.com/fxcop/archive/tags/Tips+and+Tricks/default.aspx">Tips and Tricks</category><category domain="http://blogs.msdn.com/fxcop/archive/tags/Team+System/default.aspx">Team System</category><category domain="http://blogs.msdn.com/fxcop/archive/tags/Code+Analysis/default.aspx">Code Analysis</category><category domain="http://blogs.msdn.com/fxcop/archive/tags/Code+Analysis+Policy/default.aspx">Code Analysis Policy</category></item><item><title>TIP: Automatically generate Managed Code Analysis/FxCop suppressions</title><link>http://blogs.msdn.com/fxcop/archive/2007/01/18/tip-how-to-suppress-managed-code-analysis-fxcop-warnings-automatically.aspx</link><pubDate>Thu, 18 Jan 2007 19:00:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:1429397</guid><dc:creator>David M. Kean</dc:creator><slash:comments>1</slash:comments><comments>http://blogs.msdn.com/fxcop/comments/1429397.aspx</comments><wfw:commentRss>http://blogs.msdn.com/fxcop/commentrss.aspx?PostID=1429397</wfw:commentRss><wfw:comment>http://blogs.msdn.com/fxcop/rsscomments.aspx?PostID=1429397</wfw:comment><description>&lt;P&gt;I see a lot of users attempting to hand code a &lt;A href="http://msdn2.microsoft.com/en-us/system.diagnostics.codeanalysis.suppressmessageattribute.aspx" mce_href="http://msdn2.microsoft.com/en-us/system.diagnostics.codeanalysis.suppressmessageattribute.aspx"&gt;SuppressMessageAttribute&lt;/A&gt;&amp;nbsp;themselves. This can be error prone&amp;nbsp;and is not needed when both Visual Studio and the&amp;nbsp;standalone FxCop&amp;nbsp;can automatically generate these for you.&lt;BR&gt;&lt;/P&gt;
&lt;P&gt;&lt;STRONG&gt;In Visual Studio 2005&lt;/STRONG&gt;&lt;/P&gt;
&lt;OL&gt;
&lt;LI&gt;Right-click a Code Analysis warning in the &lt;STRONG&gt;Error List&lt;/STRONG&gt; and choose &lt;STRONG&gt;Suppress Message(s).&lt;/STRONG&gt;&lt;/LI&gt;&lt;/OL&gt;
&lt;P&gt;&lt;STRONG&gt;In Visual Studio Orcas&lt;/STRONG&gt;&lt;/P&gt;
&lt;OL&gt;
&lt;LI&gt;Right-click a Code Analysis warning in the &lt;STRONG&gt;Error List&lt;/STRONG&gt; and choose &lt;STRONG&gt;Suppress Message(s)&lt;/STRONG&gt; -&amp;gt; &lt;STRONG&gt;In Source &lt;/STRONG&gt;or &lt;STRONG&gt;Suppress Message(s)&lt;/STRONG&gt; -&amp;gt; &lt;STRONG&gt;In Project Suppression File&lt;/STRONG&gt;&lt;/LI&gt;&lt;/OL&gt;
&lt;P&gt;&lt;STRONG&gt;In FxCop&lt;/STRONG&gt;&lt;/P&gt;
&lt;OL&gt;
&lt;LI&gt;Right-click a warning and choose &lt;STRONG&gt;Copy As&lt;/STRONG&gt; -&amp;gt; &lt;STRONG&gt;SuppressMessage&lt;/STRONG&gt;. 
&lt;LI&gt;Paste the contents of the Clipboard at the top of the code element that caused the warning.&lt;/LI&gt;&lt;/OL&gt;
&lt;P&gt;&lt;STRONG&gt;Note:&lt;/STRONG&gt; In both Visual Studio and FxCop you can select multiple warnings and suppress them all once.&lt;/P&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=1429397" width="1" height="1"&gt;</description><category domain="http://blogs.msdn.com/fxcop/archive/tags/Rules/default.aspx">Rules</category><category domain="http://blogs.msdn.com/fxcop/archive/tags/Tips+and+Tricks/default.aspx">Tips and Tricks</category><category domain="http://blogs.msdn.com/fxcop/archive/tags/Team+System/default.aspx">Team System</category><category domain="http://blogs.msdn.com/fxcop/archive/tags/Visual+Studio+2008/default.aspx">Visual Studio 2008</category><category domain="http://blogs.msdn.com/fxcop/archive/tags/Code+Analysis/default.aspx">Code Analysis</category><category domain="http://blogs.msdn.com/fxcop/archive/tags/Suppressions/default.aspx">Suppressions</category><category domain="http://blogs.msdn.com/fxcop/archive/tags/FxCop/default.aspx">FxCop</category></item><item><title>TIP: How to quickly enable Code Analysis on multiple projects [David Kean]</title><link>http://blogs.msdn.com/fxcop/archive/2006/08/11/tip-how-to-quickly-enable-code-analysis-on-multiple-projects-david-kean.aspx</link><pubDate>Fri, 11 Aug 2006 18:00:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:694387</guid><dc:creator>David M. Kean</dc:creator><slash:comments>0</slash:comments><comments>http://blogs.msdn.com/fxcop/comments/694387.aspx</comments><wfw:commentRss>http://blogs.msdn.com/fxcop/commentrss.aspx?PostID=694387</wfw:commentRss><wfw:comment>http://blogs.msdn.com/fxcop/rsscomments.aspx?PostID=694387</wfw:comment><description>&lt;P&gt;Daniel Fisher has posted a entry on &lt;A href="http://www.lennybacon.com/PermaLink,guid,64276d86-b1ec-4999-a1c2-309af9d8ea79.aspx"&gt;using a macro&amp;nbsp;to quickly enable Code Analysis on multiple projects&lt;/A&gt;. The macro also allows you to apply the same rule selections across an entire solution.&lt;/P&gt;
&lt;P&gt;Thanks Daniel!&lt;/P&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=694387" width="1" height="1"&gt;</description><category domain="http://blogs.msdn.com/fxcop/archive/tags/Tips+and+Tricks/default.aspx">Tips and Tricks</category><category domain="http://blogs.msdn.com/fxcop/archive/tags/Team+System/default.aspx">Team System</category><category domain="http://blogs.msdn.com/fxcop/archive/tags/Code+Analysis/default.aspx">Code Analysis</category><category domain="http://blogs.msdn.com/fxcop/archive/tags/Configuration/default.aspx">Configuration</category></item><item><title>TIP: How to change the FxCop naming/design rules to fire on internals [David Kean]</title><link>http://blogs.msdn.com/fxcop/archive/2006/08/08/tip-how-to-change-the-fxcop-naming-design-rules-to-fire-on-internals-david-kean.aspx</link><pubDate>Wed, 09 Aug 2006 06:56:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:692908</guid><dc:creator>David M. Kean</dc:creator><slash:comments>4</slash:comments><comments>http://blogs.msdn.com/fxcop/comments/692908.aspx</comments><wfw:commentRss>http://blogs.msdn.com/fxcop/commentrss.aspx?PostID=692908</wfw:commentRss><wfw:comment>http://blogs.msdn.com/fxcop/rsscomments.aspx?PostID=692908</wfw:comment><description>&lt;P&gt;By default, the FxCop naming&amp;nbsp;and design rules only fire on publicly visible types and members. There are a couple reasons for this:&lt;/P&gt;
&lt;UL&gt;
&lt;LI&gt;The &lt;A href="http://msdn2.microsoft.com/en-us/library/ms229042.aspx" mce_href="http://msdn2.microsoft.com/en-us/library/ms229042.aspx"&gt;.NET Framework Design Guidelines&lt;/A&gt;, which&amp;nbsp;FxCop enforces,&amp;nbsp;only contains&amp;nbsp;guidelines&amp;nbsp;for publicly visible API. What internal Microsoft teams (and you) do with their internal types and members is completely up to them.&lt;BR&gt;&lt;/LI&gt;
&lt;LI&gt;Noise. If you tend to wrap a lot of native types and members, then&amp;nbsp;this internal API could&amp;nbsp;be potentially fire numerous violations.&lt;/LI&gt;&lt;/UL&gt;
&lt;P&gt;However, if you would feel like you would like to be consistent with both your internal and customer facing API, then a little known feature is the ability to override this default in FxCop. &lt;BR&gt;&lt;BR&gt;To do this,&amp;nbsp;simply do the following:&lt;/P&gt;
&lt;OL&gt;
&lt;LI&gt;Using FxCop, open your FxCop project&lt;/LI&gt;
&lt;LI&gt;Choose &lt;STRONG&gt;Project &lt;/STRONG&gt;-&amp;gt; &lt;STRONG&gt;Options&lt;/STRONG&gt;&lt;/LI&gt;
&lt;LI&gt;Choose the &lt;STRONG&gt;Spelling &amp;amp; Analysis&lt;/STRONG&gt; tab and check &lt;STRONG&gt;Run all overridable rules against all targets&lt;/STRONG&gt;&lt;/LI&gt;
&lt;LI&gt;Click &lt;STRONG&gt;OK&lt;/STRONG&gt;&lt;/LI&gt;&lt;/OL&gt;
&lt;P&gt;Unfortunately, it is not possible to currently change this in Visual Studio Code Analysis.&lt;/P&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=692908" width="1" height="1"&gt;</description><category domain="http://blogs.msdn.com/fxcop/archive/tags/Rules/default.aspx">Rules</category><category domain="http://blogs.msdn.com/fxcop/archive/tags/Tips+and+Tricks/default.aspx">Tips and Tricks</category><category domain="http://blogs.msdn.com/fxcop/archive/tags/Team+System/default.aspx">Team System</category><category domain="http://blogs.msdn.com/fxcop/archive/tags/Code+Analysis/default.aspx">Code Analysis</category><category domain="http://blogs.msdn.com/fxcop/archive/tags/Configuration/default.aspx">Configuration</category><category domain="http://blogs.msdn.com/fxcop/archive/tags/FxCop/default.aspx">FxCop</category></item><item><title>TIP: Get more information about a rule/warning within Visual Studio [David Kean]</title><link>http://blogs.msdn.com/fxcop/archive/2006/06/12/tip-get-more-information-about-a-rule-warning-within-visual-studio-david-kean.aspx</link><pubDate>Tue, 13 Jun 2006 08:53:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:629193</guid><dc:creator>David M. Kean</dc:creator><slash:comments>3</slash:comments><comments>http://blogs.msdn.com/fxcop/comments/629193.aspx</comments><wfw:commentRss>http://blogs.msdn.com/fxcop/commentrss.aspx?PostID=629193</wfw:commentRss><wfw:comment>http://blogs.msdn.com/fxcop/rsscomments.aspx?PostID=629193</wfw:comment><description>&lt;P&gt;Did you know you can get more information about a particular rule/warning within Visual Studio; including its description, information on how to fix it, whether or not it is considered a breaking change, when or when not to suppress it and code samples?&lt;/P&gt;
&lt;P&gt;To do this for a particular warning in the &lt;STRONG&gt;Error List&lt;/STRONG&gt;:&lt;/P&gt;
&lt;OL&gt;
&lt;LI&gt;Right-click the warning and choose &lt;STRONG&gt;Show Error Help&lt;/STRONG&gt;&lt;/LI&gt;&lt;/OL&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;-or-&lt;/P&gt;
&lt;OL&gt;
&lt;LI&gt;Select the warning and press &lt;STRONG&gt;F1&lt;/STRONG&gt;&lt;/LI&gt;&lt;/OL&gt;
&lt;P&gt;To do this for a particular rule:&lt;/P&gt;
&lt;OL&gt;
&lt;LI&gt;In &lt;STRONG&gt;Solution Explorer&lt;/STRONG&gt;, right-click your project and choose &lt;STRONG&gt;Properties&lt;/STRONG&gt; 
&lt;LI&gt;In the &lt;STRONG&gt;Project Properties &lt;/STRONG&gt;window, choose the &lt;STRONG&gt;Code Analysis &lt;/STRONG&gt;tab 
&lt;LI&gt;Expand one of the category nodes, select a rule node and press &lt;STRONG&gt;F1&lt;/STRONG&gt;&lt;/LI&gt;&lt;/OL&gt;
&lt;P&gt;This information is updated&amp;nbsp;regularly, so you can make sure the Help viewer always displays the most update-to-date information by changing it so that it tries the online MSDN Library version&amp;nbsp;before the local:&lt;/P&gt;
&lt;OL&gt;
&lt;LI&gt;Choose &lt;STRONG&gt;Tools -&amp;gt; Options&lt;/STRONG&gt; 
&lt;LI&gt;In the &lt;STRONG&gt;Options&lt;/STRONG&gt; dialog,&amp;nbsp;expand to and select&amp;nbsp;the &lt;STRONG&gt;Environment -&amp;gt; Help -&amp;gt; Online &lt;/STRONG&gt;node 
&lt;LI&gt;Under &lt;STRONG&gt;When loading Help content&lt;/STRONG&gt;, choose &lt;STRONG&gt;Try online first, then local &lt;/STRONG&gt;and click &lt;STRONG&gt;OK&lt;/STRONG&gt;&lt;/LI&gt;&lt;/OL&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=629193" width="1" height="1"&gt;</description><category domain="http://blogs.msdn.com/fxcop/archive/tags/Rules/default.aspx">Rules</category><category domain="http://blogs.msdn.com/fxcop/archive/tags/Tips+and+Tricks/default.aspx">Tips and Tricks</category><category domain="http://blogs.msdn.com/fxcop/archive/tags/Team+System/default.aspx">Team System</category><category domain="http://blogs.msdn.com/fxcop/archive/tags/Code+Analysis/default.aspx">Code Analysis</category><category domain="http://blogs.msdn.com/fxcop/archive/tags/Documentation/default.aspx">Documentation</category></item></channel></rss>