<?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>Video of my TechEd presentation of Common Issues in ASP.NET and how to debug them with Windbg</title><link>http://blogs.msdn.com/tess/archive/2008/11/27/video-of-my-teched-presentation-of-common-issues-in-asp-net-and-how-to-debug-them-with-windbg.aspx</link><description>My TechEd presentation “Common Issues in ASP.NET and how to debug them with Windbg” is now up on channel 9, so if you want to watch it, here you go http://channel9.msdn.com/posts/MSDNSweden/Vanliga-fel-som-grs-med-ASPNET-och-hur-du-hittar-dem-med-WinDbg/</description><dc:language>sv-SE</dc:language><generator>CommunityServer 2.1 SP1 (Build: 61025.2)</generator><item><title>re: Video of my TechEd presentation of Common Issues in ASP.NET and how to debug them with Windbg</title><link>http://blogs.msdn.com/tess/archive/2008/11/27/video-of-my-teched-presentation-of-common-issues-in-asp-net-and-how-to-debug-them-with-windbg.aspx#9149235</link><pubDate>Fri, 28 Nov 2008 05:39:04 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:9149235</guid><dc:creator>Alex</dc:creator><description>&lt;p&gt;The wmv link on that page doesn't work at all.&lt;/p&gt;
&lt;p&gt;Is there any opportunity that you can give some information on how to debug sharepoint related issues?&lt;/p&gt;
</description></item><item><title>re: Video of my TechEd presentation of Common Issues in ASP.NET and how to debug them with Windbg</title><link>http://blogs.msdn.com/tess/archive/2008/11/27/video-of-my-teched-presentation-of-common-issues-in-asp-net-and-how-to-debug-them-with-windbg.aspx#9150071</link><pubDate>Fri, 28 Nov 2008 09:43:02 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:9150071</guid><dc:creator>Dominick</dc:creator><description>&lt;p&gt;Hey Tess!&lt;/p&gt;
&lt;p&gt;gratz! You did great.&lt;/p&gt;
&lt;p&gt;Take care&lt;/p&gt;
&lt;p&gt;Dominick&lt;/p&gt;
</description></item><item><title>Interesting Finds: 2008.11.31</title><link>http://blogs.msdn.com/tess/archive/2008/11/27/video-of-my-teched-presentation-of-common-issues-in-asp-net-and-how-to-debug-them-with-windbg.aspx#9159551</link><pubDate>Mon, 01 Dec 2008 08:23:14 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:9159551</guid><dc:creator>gOODiDEA.NET</dc:creator><description>&lt;p&gt;.NET Visual Studio Keyboard Shortcut Tip: Ctrl+- / Ctrl+Shift+- Did you know&amp;amp;#8230; There&amp;amp;#8217;s a way&lt;/p&gt;
</description></item><item><title>Interesting Finds: 2008.11.31</title><link>http://blogs.msdn.com/tess/archive/2008/11/27/video-of-my-teched-presentation-of-common-issues-in-asp-net-and-how-to-debug-them-with-windbg.aspx#9159557</link><pubDate>Mon, 01 Dec 2008 08:27:55 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:9159557</guid><dc:creator>gOODiDEA</dc:creator><description>&lt;p&gt;.NETVisualStudioKeyboardShortcutTip:Ctrl -/Ctrl Shift -Didyouknow&lt;/p&gt;
</description></item><item><title>re: Video of my TechEd presentation of Common Issues in ASP.NET and how to debug them with Windbg</title><link>http://blogs.msdn.com/tess/archive/2008/11/27/video-of-my-teched-presentation-of-common-issues-in-asp-net-and-how-to-debug-them-with-windbg.aspx#9162066</link><pubDate>Tue, 02 Dec 2008 02:14:56 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:9162066</guid><dc:creator>snarum</dc:creator><description>&lt;p&gt;If there ever would be a version with slightly higher quality I'd be very interested knowing about it.&lt;/p&gt;
</description></item><item><title>re: Video of my TechEd presentation of Common Issues in ASP.NET and how to debug them with Windbg</title><link>http://blogs.msdn.com/tess/archive/2008/11/27/video-of-my-teched-presentation-of-common-issues-in-asp-net-and-how-to-debug-them-with-windbg.aspx#9215456</link><pubDate>Mon, 15 Dec 2008 00:39:30 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:9215456</guid><dc:creator>Eldblom</dc:creator><description>&lt;p&gt;Here's a late thank you for your presentations at TechEd. I found them really inspiring and we've already applied the techniques you described in some of our projects.&lt;/p&gt;
</description></item><item><title>re: Video of my TechEd presentation of Common Issues in ASP.NET and how to debug them with Windbg</title><link>http://blogs.msdn.com/tess/archive/2008/11/27/video-of-my-teched-presentation-of-common-issues-in-asp-net-and-how-to-debug-them-with-windbg.aspx#9230599</link><pubDate>Wed, 17 Dec 2008 13:27:06 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:9230599</guid><dc:creator>GP</dc:creator><description>&lt;p&gt;Hello!&lt;/p&gt;
&lt;p&gt;Sorry that I post my question here (a &amp;quot;little&amp;quot; bit off-topic), but I have no other option to contact you. If you have a minute or two minute left I would really appreciate your feedback on my problem described below. You can also reply me by mail if you like (guenter.prossliner_nospam&amp;lt;AT&amp;gt;world-direct.at, remove &amp;quot;_nospam&amp;quot;).&lt;/p&gt;
&lt;p&gt;I have the problem, that !clrstack -a doesn't show up arguments, instead it looks like:&lt;/p&gt;
&lt;p&gt;PARAMETERS:&lt;/p&gt;
&lt;p&gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;this = &amp;lt;no data&amp;gt;&lt;/p&gt;
&lt;p&gt;My assumption is that this arguments are passed in registers. But even if i look at the output of !u i cannot find them.&lt;/p&gt;
&lt;p&gt;This is what I've done:&lt;/p&gt;
&lt;p&gt;1. I have loaded a crash dump into windbg&lt;/p&gt;
&lt;p&gt;2. !pe&lt;/p&gt;
&lt;p&gt;0:033&amp;gt; !pe&lt;/p&gt;
&lt;p&gt;Exception object: 0113d50c&lt;/p&gt;
&lt;p&gt;Exception type: System.ArgumentException&lt;/p&gt;
&lt;p&gt;Message: The UNC path should be of the form \\server\share.&lt;/p&gt;
&lt;p&gt;InnerException: &amp;lt;none&amp;gt;&lt;/p&gt;
&lt;p&gt;StackTrace (generated):&lt;/p&gt;
&lt;p&gt; &amp;nbsp; &amp;nbsp;SP &amp;nbsp; &amp;nbsp; &amp;nbsp; IP &amp;nbsp; &amp;nbsp; &amp;nbsp; Function&lt;/p&gt;
&lt;p&gt; &amp;nbsp; &amp;nbsp;060CF2F8 7962C227 mscorlib_ni!System.IO.Path.NormalizePathFast(System.String, Boolean)+0x2c7d6f&lt;/p&gt;
&lt;p&gt; &amp;nbsp; &amp;nbsp;060CF81C 793644AE mscorlib_ni!System.IO.Path.GetFullPathInternal(System.String)+0x2e&lt;/p&gt;
&lt;p&gt; &amp;nbsp; &amp;nbsp;060CF824 793A23C6 mscorlib_ni!System.IO.Directory.InternalGetFileDirectoryNames(System.String, System.String, System.String, Boolean, Boolean, System.IO.SearchOption)+0xb6&lt;/p&gt;
&lt;p&gt; &amp;nbsp; &amp;nbsp;060CF8E4 7948F41A mscorlib_ni!System.IO.Directory.GetFiles(System.String, System.String, System.IO.SearchOption)+0x26&lt;/p&gt;
&lt;p&gt; &amp;nbsp; &amp;nbsp;060CF8F8 7948F3D8 mscorlib_ni!System.IO.Directory.GetFiles(System.String)+0xc&lt;/p&gt;
&lt;p&gt; &amp;nbsp; &amp;nbsp;060CF8FC 00BA3AF7 WorldDirect_Europay_TK_ExternalInterfaces_Communication!WorldDirect.Europay.TK.ExternalInterfaces.Communication.DirectoryWatcherMessageSink.HandleExistingFiles(System.String)+0x16f&lt;/p&gt;
&lt;p&gt; &amp;nbsp; &amp;nbsp;060CF93C 00BA3957 &lt;/p&gt;
&lt;p&gt;...&lt;/p&gt;
&lt;p&gt;It's obviously an invalid string passed into Directory.GetFiles(), but WHAT string?&lt;/p&gt;
&lt;p&gt;3. !clrstack -a&lt;/p&gt;
&lt;p&gt;0:033&amp;gt; !clrstack -a&lt;/p&gt;
&lt;p&gt;OS Thread Id: 0xfe4 (33)&lt;/p&gt;
&lt;p&gt;ESP &amp;nbsp; &amp;nbsp; &amp;nbsp; EIP &amp;nbsp; &amp;nbsp; &lt;/p&gt;
&lt;p&gt;060cf834 7c8285ec [HelperMethodFrame: 060cf834] &lt;/p&gt;
&lt;p&gt;060cf884 00ba3af7 WorldDirect.Europay.TK.ExternalInterfaces.Communication.DirectoryWatcherMessageSink.HandleExistingFiles(System.String)&lt;/p&gt;
&lt;p&gt; &amp;nbsp; &amp;nbsp;PARAMETERS:&lt;/p&gt;
&lt;p&gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;this = &amp;lt;no data&amp;gt;&lt;/p&gt;
&lt;p&gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;filter = &amp;lt;no data&amp;gt;&lt;/p&gt;
&lt;p&gt; &amp;nbsp; &amp;nbsp;LOCALS:&lt;/p&gt;
&lt;p&gt;...&lt;/p&gt;
&lt;p&gt;I have to get the &amp;quot;filter&amp;quot; argument.&lt;/p&gt;
&lt;p&gt;4. Now I've tried to figure it out by using !u on the &amp;quot;HandleExistingFiles&amp;quot; method:&lt;/p&gt;
&lt;p&gt;0:033&amp;gt; !ip2md 00BA3AF7&lt;/p&gt;
&lt;p&gt;MethodDesc: 036574d0&lt;/p&gt;
&lt;p&gt;...&lt;/p&gt;
&lt;p&gt;0:033&amp;gt; !u 036574d0&lt;/p&gt;
&lt;p&gt;00ba3988 55 &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;push &amp;nbsp; &amp;nbsp;ebp&lt;/p&gt;
&lt;p&gt;00ba3989 8bec &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;mov &amp;nbsp; &amp;nbsp; ebp,esp&lt;/p&gt;
&lt;p&gt;...&lt;/p&gt;
&lt;p&gt;00ba39cb 8b45c8 &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;mov &amp;nbsp; &amp;nbsp; eax,dword ptr [ebp-38h]&lt;/p&gt;
&lt;p&gt;00ba39ce 8b4810 &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;mov &amp;nbsp; &amp;nbsp; ecx,dword ptr [eax+10h]&lt;/p&gt;
&lt;p&gt;00ba39d1 e8f6b98e78 &amp;nbsp; &amp;nbsp; &amp;nbsp;call &amp;nbsp; &amp;nbsp;mscorlib_ni+0x3cf3cc (7948f3cc) (System.IO.Directory.GetFiles(System.String), mdToken: &lt;/p&gt;
&lt;p&gt;...&lt;/p&gt;
&lt;p&gt;5. Now I've tried to figure out the contents of the eax and ecx registers at the time this method had been called. The windbg &amp;quot;r&amp;quot; command doesn't help, because the cpu is somewhere in the exception handler.&lt;/p&gt;
&lt;p&gt;6. I've calculated the register values based on the ESP of the !clrstack -a output:&lt;/p&gt;
&lt;p&gt;ESP=060cf884&lt;/p&gt;
&lt;p&gt;&amp;gt; 00ba3988 55 &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;push &amp;nbsp; &amp;nbsp;ebp&lt;/p&gt;
&lt;p&gt;EBP=060cf884&lt;/p&gt;
&lt;p&gt;&amp;gt; 00ba39cb 8b45c8 &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;mov &amp;nbsp; &amp;nbsp; eax,dword ptr [ebp-38h]&lt;/p&gt;
&lt;p&gt;EAX=[060cf884-38h] = [060CF84C] = 0021bc28&lt;/p&gt;
&lt;p&gt;&amp;gt; 00ba39ce 8b4810 &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;mov &amp;nbsp; &amp;nbsp; ecx,dword ptr [eax+10h]&lt;/p&gt;
&lt;p&gt;ECX=[0021bc28+10h]=[0021bc38] = 00000000&lt;/p&gt;
&lt;p&gt;7. Now I thought that I can execute a !do 0021bc28, but it gives me the (famous) &amp;quot;Invalid CLASS field&amp;quot;, which isn't really a great supprise since [21bc38] = null-poiter.&lt;/p&gt;
&lt;p&gt;You you tell me why this doesn't work? What have I done wrong? &amp;nbsp;It the ESP Value printed by !clrstack the register before the method has been called? What confused me too is the fact, that the !pe command print out a different (E)SP for the same StackFrame (060CF8FC)!&lt;/p&gt;
&lt;p&gt;I can give you more information if necessary.&lt;/p&gt;
&lt;p&gt;Thank you very much!&lt;/p&gt;
</description></item><item><title>re: Video of my TechEd presentation of Common Issues in ASP.NET and how to debug them with Windbg</title><link>http://blogs.msdn.com/tess/archive/2008/11/27/video-of-my-teched-presentation-of-common-issues-in-asp-net-and-how-to-debug-them-with-windbg.aspx#9230637</link><pubDate>Wed, 17 Dec 2008 13:51:30 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:9230637</guid><dc:creator>Tess</dc:creator><description>&lt;p&gt;Hi GP.&lt;/p&gt;
&lt;p&gt;!clrstack -a will only produce data if it can get to it, which means that if the registers have been overwritten etc. it can not.&lt;/p&gt;
&lt;p&gt;You can always run !dso though to look at the objects on the stack, and specifically look at the ones laying on ESPs between your call and the next or previous &lt;/p&gt;
</description></item><item><title>A WinDbg Debugging Journey - NHibernate Memory Leak</title><link>http://blogs.msdn.com/tess/archive/2008/11/27/video-of-my-teched-presentation-of-common-issues-in-asp-net-and-how-to-debug-them-with-windbg.aspx#9242704</link><pubDate>Fri, 19 Dec 2008 22:29:47 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:9242704</guid><dc:creator>RasmusKL's Blog</dc:creator><description>&lt;p&gt;A WinDbg Debugging Journey - NHibernate Memory Leak&lt;/p&gt;
</description></item></channel></rss>