<?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>CLR - a little bit of everything, now including error reporting</title><link>http://blogs.msdn.com/vipul/default.aspx</link><description>Did you send the error report today?</description><dc:language>en-US</dc:language><generator>CommunityServer 2.1 SP1 (Build: 61025.2)</generator><item><title>Debugging Silverlight with SOS.dll</title><link>http://blogs.msdn.com/vipul/archive/2008/08/25/debugging-silverlight-with-sos-dll.aspx</link><pubDate>Tue, 26 Aug 2008 01:13:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:8895253</guid><dc:creator>vipul</dc:creator><slash:comments>0</slash:comments><comments>http://blogs.msdn.com/vipul/comments/8895253.aspx</comments><wfw:commentRss>http://blogs.msdn.com/vipul/commentrss.aspx?PostID=8895253</wfw:commentRss><description>&lt;P&gt;Tess just posted an &lt;A class="" href="http://blogs.msdn.com/tess/archive/2008/08/21/debugging-silverlight-applications-with-windbg-and-sos-dll.aspx" mce_href="http://blogs.msdn.com/tess/archive/2008/08/21/debugging-silverlight-applications-with-windbg-and-sos-dll.aspx"&gt;article&lt;/A&gt; on how to debug Silverlight application using sos.dll.&lt;/P&gt;
&lt;P&gt;If you have been using sos.dll to debug your silverlight as well as desktop applications and are stuck, contact me through the contact page and I can try to help you out.&lt;/P&gt;
&lt;P mce_keep="true"&gt;&amp;nbsp;&lt;/P&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=8895253" width="1" height="1"&gt;</description><category domain="http://blogs.msdn.com/vipul/archive/tags/.NET_2F00_CLR/default.aspx">.NET/CLR</category></item><item><title>Dr Watson and the Common Language Runtime</title><link>http://blogs.msdn.com/vipul/archive/2007/01/22/Dr.-watson-and-the-common-language-runtime.aspx</link><pubDate>Mon, 22 Jan 2007 20:41:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:1508964</guid><dc:creator>vipul</dc:creator><slash:comments>0</slash:comments><comments>http://blogs.msdn.com/vipul/comments/1508964.aspx</comments><wfw:commentRss>http://blogs.msdn.com/vipul/commentrss.aspx?PostID=1508964</wfw:commentRss><description>&lt;P&gt;A lot of time has passed since my introductory post and I was really felling guilty that I could not spend some time to share on what I had &lt;A class="" href="http://blogs.msdn.com/vipul/archive/2006/12/05/welcome-post-and-introduction.aspx" target=_blank mce_href="http://blogs.msdn.com/vipul/archive/2006/12/05/welcome-post-and-introduction.aspx"&gt;promised&lt;/A&gt;. &lt;/P&gt;
&lt;P&gt;Now that I have got some time to post, let me talk about the CLR error reporting infrastructure.&lt;/P&gt;
&lt;P&gt;With .NET 2.0, CLR shipped with a &lt;A class="" href="http://dictionary.reference.com/browse/shim" target=_blank mce_href="http://dictionary.reference.com/browse/shim"&gt;shim&lt;/A&gt; which, when an application fails, would pop up the (un)famous "Send this error report to Microsoft" dialog.&lt;/P&gt;
&lt;P&gt;Why is this important? For multiple reasons:&lt;/P&gt;
&lt;UL&gt;
&lt;LI&gt;It provides a consistent interface to the user. If a native application allows to create a Watson report, why should a managed application not allow me to do the same?&lt;/LI&gt;
&lt;LI&gt;It allows you to report possible bugs in the CLR, as well as your/third party's code. If you look at the Watson UI,&amp;nbsp;you will notice that it pops up a dialog to send this information to Microsoft. If you do opt to do this, on Vista, the Watson application will check to see if this is a known problem, If yes, it will take you to the page containing the information on how to resolve the problem. If not, the information uploaded (at your consent) might be a minidump of the process, which is then analyzed for the cause of the failure by running different heuristics. Vendors who sign up to look at their watson reports will be able to see the common (and possibly uncommon) reasons for the failure of the application.&lt;/LI&gt;
&lt;LI&gt;Every report you send to microsoft helps us to make our application better and bug-free. So next time you see&amp;nbsp;THE dialog, dont hesitate to send the report. As mentioned in the one of the dialogs, no confidential information is being sent to Microsoft. &lt;/LI&gt;&lt;/UL&gt;
&lt;P&gt;Let's write a test application which crashes(Code is attached).&lt;/P&gt;&lt;FONT color=#0000ff size=2&gt;
&lt;P&gt;using&lt;/FONT&gt;&lt;FONT size=2&gt; System;&lt;/P&gt;&lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;
&lt;P&gt;class&lt;/FONT&gt;&lt;FONT size=2&gt; Test&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;/P&gt;
&lt;P&gt;&lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; public&lt;/FONT&gt;&lt;FONT size=2&gt; &lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;static&lt;/FONT&gt;&lt;FONT size=2&gt; &lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;void&lt;/FONT&gt;&lt;FONT size=2&gt; Main()&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;/P&gt;
&lt;P&gt;&lt;/FONT&gt;&lt;FONT color=#0000ff size=2&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; throw&lt;/FONT&gt;&lt;FONT size=2&gt; &lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;new&lt;/FONT&gt;&lt;FONT size=2&gt; &lt;/FONT&gt;&lt;FONT color=#008080 size=2&gt;Exception&lt;/FONT&gt;&lt;FONT size=2&gt;();&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/P&gt;
&lt;P&gt;}&lt;/P&gt;&lt;/FONT&gt;
&lt;P mce_keep="true"&gt;&lt;IMG title="Watson UI - First POPUP" style="WIDTH: 491px; HEIGHT: 269px" height=269 alt="Watson UI - First POPUP" src="http://blogs.msdn.com/photos/vipul/images/1509214/original.aspx" width=491 align=middle mce_src="http://blogs.msdn.com/photos/vipul/images/1509214/original.aspx"&gt;&lt;/P&gt;
&lt;P mce_keep="true"&gt;When you click on the "What data does this error report contain" link on the above dialog, you get the details. Here, it tells that the failure was due to System.Exception. &lt;/P&gt;
&lt;P mce_keep="true"&gt;&lt;IMG title="Watson - What does this error report contain?" style="WIDTH: 505px; HEIGHT: 329px" height=329 alt="Watson - What does this error report contain?" src="http://blogs.msdn.com/photos/vipul/images/1509227/original.aspx" width=505 align=middle mce_src="http://blogs.msdn.com/photos/vipul/images/1509227/original.aspx"&gt;&lt;/P&gt;
&lt;P mce_keep="true"&gt;&amp;nbsp;If you like to dig deeper, and which I would encourage you to go, you can click in the "View the contents of the error report" link on the above dialog. This will pop up a dialog with a lot of information, most of which might confuse you (it did to me when I first saw it).&amp;nbsp; This dialog contains some of the technical information needed to diagonize the failure. I will go into more details in some other post. But just to give you a glimpse, besides other information, this dialog contains the information on which modules were loaded when the process crashed.&lt;/P&gt;
&lt;P mce_keep="true"&gt;&lt;IMG title="Watson - Technical details on the contents of the error report." style="WIDTH: 527px; HEIGHT: 313px" height=313 alt="Watson - Technical details on the contents of the error report." src="http://blogs.msdn.com/photos/vipul/images/1509237/original.aspx" width=527 align=middle mce_src="http://blogs.msdn.com/photos/vipul/images/1509237/original.aspx"&gt;&lt;/P&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=1508964" width="1" height="1"&gt;</description><enclosure url="http://blogs.msdn.com/vipul/attachment/1508964.ashx" length="108" type="text/plain" /><category domain="http://blogs.msdn.com/vipul/archive/tags/Watson/default.aspx">Watson</category></item><item><title>Welcome post and introduction</title><link>http://blogs.msdn.com/vipul/archive/2006/12/05/welcome-post-and-introduction.aspx</link><pubDate>Wed, 06 Dec 2006 01:47:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:1213386</guid><dc:creator>vipul</dc:creator><slash:comments>1</slash:comments><comments>http://blogs.msdn.com/vipul/comments/1213386.aspx</comments><wfw:commentRss>http://blogs.msdn.com/vipul/commentrss.aspx?PostID=1213386</wfw:commentRss><description>&lt;P&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'; mso-bidi-font-family: Arial"&gt;Console.WriteLine("Hello World!");&lt;?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" /&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Arial"&gt;Hi everyone,&amp;nbsp;I am Vipul,&amp;nbsp;a tester in the CLR team (Developer Services team, to be more . My areas of work include Managed Error Reporting a.k.a. Watson and SOS.&amp;nbsp; Earlier, I was a &lt;A class="" href="http://www.microsoft.com/mvp" target=_blank mce_href="http://www.microsoft.com/mvp"&gt;Microsoft MVP&lt;/A&gt; , before Microsoft hired me full-time. I have written a few articles on LINQ earlier (&lt;A class="" href="http://www.developer.com/net/csharp/article.php/3589916" target=_blank mce_href="http://www.developer.com/net/csharp/article.php/3589916"&gt;Anonymous types&lt;/A&gt;, &lt;A class="" href="http://www.developer.com/net/csharp/article.php/3592216" target=_blank mce_href="http://www.developer.com/net/csharp/article.php/3592216"&gt;Extension methods&lt;/A&gt;, &lt;A class="" href="http://www.developer.com/net/csharp/article.php/3598381" target=_blank mce_href="http://www.developer.com/net/csharp/article.php/3598381"&gt;Lambda expressions&lt;/A&gt;, &lt;A class="" href="http://www.developer.com/net/csharp/article.php/3601646" target=_blank mce_href="http://www.developer.com/net/csharp/article.php/3601646"&gt;Type inference&lt;/A&gt;, &lt;A class="" href="http://www.developer.com/net/csharp/article.php/3605011" target=_blank mce_href="http://www.developer.com/net/csharp/article.php/3605011"&gt;Object Initialization and creation&lt;/A&gt;&amp;nbsp;and &lt;A class="" href="http://www.developer.com/net/csharp/article.php/3607421" target=_blank mce_href="http://www.developer.com/net/csharp/article.php/3607421"&gt;Collection initialization&lt;/A&gt;)&amp;nbsp;and I had a blog &lt;A class="" href="http://msmvps.com/blogs/vipul/Default.aspx" target=_blank mce_href="http://msmvps.com/blogs/vipul/Default.aspx"&gt;here&lt;/A&gt;.&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Arial"&gt;Though I am a new face here (only 6 months into the team),&amp;nbsp;you must already be knowing my team members by name&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Arial"&gt; -&amp;nbsp; &lt;A class="" href="http://blogs.msdn.com/jmstall/" target=_blank mce_href="http://blogs.msdn.com/jmstall/"&gt;Mike Stall&lt;/A&gt;, &lt;A class="" href="http://blogs.msdn.com/rmbyers/" target=_blank mce_href="http://blogs.msdn.com/rmbyers/"&gt;Rick Byers&lt;/A&gt;, &lt;A class="" href="http://blogs.msdn.com/tlai/" target=_blank mce_href="http://blogs.msdn.com/tlai/"&gt;Thomas Lai&lt;/A&gt;,&amp;nbsp;&lt;A class="" href="http://blogs.msdn.com/jkeljo/" target=_blank mce_href="http://blogs.msdn.com/jkeljo/"&gt;Jonathan Keljo&lt;/A&gt;, &lt;A class="" href="http://msdn.microsoft.com/msdntv/episode.aspx?xml=episodes/en/20060302CLRJS/manifest.xml" target=_blank mce_href="http://msdn.microsoft.com/msdntv/episode.aspx?xml=episodes/en/20060302CLRJS/manifest.xml"&gt;Jan Stranik&lt;/A&gt;&amp;nbsp;and &lt;A class="" href="http://blogs.msdn.com/mithuns/" target=_blank mce_href="http://blogs.msdn.com/mithuns/"&gt;Mithun Shanbhag&lt;/A&gt;.&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Arial"&gt;I plan to ramble about how to debug managed applications using tools like windbg and what happens when my managed application crashes. Since I love many features of the CLR besides the others I work on, you should probably hear me talking about other stuff as well.&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Arial"&gt;Stay tuned for my upcoming posts on such topics. &lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Arial"&gt;These postings are provided "AS IS" with no warranties, and confer no rights. &lt;/SPAN&gt;&lt;/P&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=1213386" width="1" height="1"&gt;</description></item></channel></rss>