April 2008 - Posts

An Open Debugger Extension
We just recently created a project on CodePlex that is an Open Source Debugger Extension project called ODbgExt .  This is an extension is going to be created by the community.  So everyone will have a say in what happens with it.  The Read More...
Posted 30 April 08 11:55 by Tom | 3 Comments   
Filed under , ,
Code Gallery and CodePlex, how are they different and what are their benefits?
So lately I have been looking into these two web sites a lot more and it isn’t always easy to figure out which one is used for what.  So I thought I would try to explain it here. Code Gallery is a community-enabled Web site where you can share developer Read More...
ASP.NET Tips: Printing an IP Address
So while looking through a dump, you will sometimes come across an IP Address.  For example, the System.Net.IPAddress: If you look at this output, you can see that we have the address in the m_Address field, but what is 1895899146?  This is Read More...
Posted 29 April 08 11:36 by Tom | 4 Comments   
Filed under , ,
ASP.NET Tips: Looking at the finalization queue
So in a previous post, we talked about Understanding when to use a Finalizer in your .NET class so now lets take a look at what the Finalize queue looks like and how to tell if things are bad. The command we use is !finalizequeue in sos: 0:010> !finalizequeue Read More...
Posted 28 April 08 12:12 by Tom | 2 Comments   
Filed under , , , ,
Understanding when to use a Finalizer in your .NET class
A common problem we see when moving to .NET all revolves around the finalizer.  There are a few reasons that this happens: Developers move from C/C++ to C# and are used to created classes with a constructor and destructor. Developers don’t understand Read More...
ASP.NET Tips: How to use DebugDiag to track down where a performance problem is coming from
We recently had a case where the customer was having performance problems. They were seeing requests take a few minutes to return and didn’t know what was happening. So they took some dumps while the problem was happening. So we ran this dump through Read More...
Posted 25 April 08 03:54 by Tom | 7 Comments   
Filed under , , , ,
Visual Studio Designer not Respecting Assembly Binding Redirection
So we recently came across an issue where Visual Studio 2005 and 2008 Designers were not respecting assembly binding redirection. Scenario We have a file which is now version 2 and stored in the GAC .  So the assembly version is 2.0.0.0.  We Read More...
Networking problems with Windows Server 2003 SP2 – update available
There have been a number of reports of networking issues after installing SP2 for Windows Server 2003.  We now have a fix that will address these.  The errors you may see include: When you try to connect to the server by using a VPN connection, Read More...
Posted 24 April 08 06:30 by Tom | 1 Comments   
Filed under , , , ,
Ajax View: Remotely Monitoring Web 2.0 Applications
Microsoft research recently released a new tool to help developers with Ajax applications.  You can check out the site for more information, Ajax View . This is some really cool technology that basically puts a proxy in between the server and the Read More...
Posted 23 April 08 09:00 by Tom | 2 Comments   
Filed under , , ,
ANSWER: POP QUIZ: Why would you get this error from Windbg?
So it was kind of a trick question posting both of these errors.  They both mean the same thing.  Basically this is the error you get in SOS when the .NET Framework isn’t loaded in the process yet.   Problem 1 is from a SOS used to Read More...
Posted 23 April 08 11:00 by Tom | 1 Comments   
Live Mesh introduced
There have been a lot of rumors around Microsoft coming out with something that is Software + Services.  So at the Web 2.0 conference, we finally announced Live Mesh . Check out this Intro post for a bunch of the details.  This also mentioned Read More...
Posted 23 April 08 09:55 by Tom | 4 Comments   
Filed under
Making an Asynchronous Call using the Impersonation Identity
If you try to make an asynchronous call, you will notice that the thread that executes the call doesn't run under the same account as the thread that called it, assuming you are using impersonation. There are a number of ways to change this if you would Read More...
Posted 22 April 08 10:20 by Tom | 5 Comments   
Filed under , , , ,
ASP.NET Tips: How to identify a COM call that is blocking GC, causing a memory leak
Problem Description So this is a customer situation we found were the customer was getting an System.OutOfMemoryException.  We were able to reproduce this with a console application that just ran: For Iterator = 0 To 99999999999 Regex.IsMatch(CONNECTION_STRING, Read More...
POP QUIZ: Why would you get this error from Windbg?
Problem 1 So here is the scenario.  You open a dump from when you were experiencing a problem and try to run an SOS command and you see: 0:024> !dumpheap -stat Cannot get the ThreadStore, do you have symbols for the mscorwks/mscorsvr files? What Read More...
Chat Question: Why do we see an exception on the heap, but it isn’t on a stack?
So there is a common issue that people run across when they start trying to debug managed code.  How does the heap compare to the current threads that are running? For example, here is an exception that we have found in the managed heap running !dumpheap Read More...
Posted 21 April 08 10:06 by Tom | 2 Comments   
Filed under , ,
Chat Question: What extension to use in what situation
So we have a bunch of debugger extensions that we need to use depending on the situation.  So here are the extensions that can depend on various situations and when to use which.  The first thing to decide is to load the right DLL for the Framework Read More...
Posted 18 April 08 11:34 by Tom | 5 Comments   
Filed under , , ,
ASP.NET Tab Missing
A common issue we see customers having is after installing ASP.NET 2.0, the ASP.NET Tab is missing from IIS. This tab is used for setting the version of ASP.NET and a lot of other things. When this tab is missing, it can be rather difficult to get it Read More...
Posted 17 April 08 09:47 by Tom | 56 Comments   
Filed under , , ,
How to handle form events after adding a master page to an existing page
Here is a question that was asked on my posting trying to invite questions, Got a question- Get an answer here . Question Something that would be handy straight from the team is how to handle ASP.NET (2 and later) form events when a Master page is added Read More...
Posted 16 April 08 03:16 by Tom | 9 Comments   
Filed under ,
Got a question? Get an answer here
So I tend to describe a lot of issues here, but we had some really great conversation in our blog chat.  So I thought I would ask for questions from everyone.  Feel free to ask anything you like.  If it is a simple, quick answer, I’ll answer Read More...
Posted 15 April 08 03:56 by Tom | 58 Comments   
Filed under , ,
ASP.NET Tips: Debugger command you may not know about – clientconns
Here is yet another command you may not be aware of.  But it can be really helpful when you are troubleshooting many types of issues with IIS/ASP.NET. !clientconns is part of a debugger extension that ships with DebugDiag .  In the directory Read More...
Posted 14 April 08 05:42 by Tom | 2 Comments   
Filed under , , ,
ASP.NET Tips: Debugger command you may not know about - procinfo
Here is another debugger command that you may not know about that is in the sos.dll file included with the debugger package for .NET 1.0 and .NET 1.1. !procinfo will print out the environment variables, CPU times and memory usage statistics.  This Read More...
Posted 12 April 08 08:48 by Tom | 2 Comments   
Filed under , ,
Recommended Reading
This post is a list of books that I would suggest people to read.  I will continue to add to this list, also, if you are using IE8, the list itself is a webslice.   Recommended ASP.NET Books Debugging Microsoft .NET 2.0 Applications Programming Read More...
Posted 12 April 08 08:00 by Tom | 6 Comments   
Filed under , ,
ASP.NET Performance counters missing
We get this problem from time to time so I thought I would talk about what to do when the performance counters are missing for ASP.NET. Method 1 The first piece of advice is to upgrade to the latest version of the framework, so the latest Service Pack.  Read More...
Posted 11 April 08 11:45 by Tom | 9 Comments   
Filed under ,
Chat Question: Memory Limits for 32-bit and 64-bit processes
During our recent blog chat, there were a number of topics that were asked about and I am going to expand on some of them.  The first one is the memory limits for different processes. This really depends on a few different things.  The architecture Read More...
ASP.NET Tips: Getting SOS to work when commands fail
So the last quiz asked about a common error message you may see when debugging a dump from .NET on a machine other then where the dump was captured.  Now I want to go into more detail on this. For a look at the quiz, check out POP QUIZ- SOS not loading Read More...
Posted 09 April 08 02:43 by Tom | 5 Comments   
Filed under , ,
ANSWER: POP QUIZ: SOS not loading
So this was a multi-part quiz.  The answers to the 4 questions posed are: What is going on here? We are trying to load the mscordacwks file that corresponds with the dump.  If we are unable to load this file, sos won’t work.  This Read More...
Posted 09 April 08 09:19 by Tom | 1 Comments   
POP QUIZ: SOS not loading properly
So for this quiz, we are going to be looking at attempting to load sos.dll for the .NET Framework 2.0. We get a dump file, and when we try to run a command on the dump file, we get an error like: So reading this, we see that we should run .cordll -ve Read More...
Authentication options for multiple scenarios
There are many types of scenarios that we have around ASP.NET and Authentication.  You can see a number of the solutions we have at ASP.NET Authentication and a good talk about them at ASP.NET Wiki: Security: Authentication and Authorization .  Read More...
Posted 07 April 08 10:49 by Tom | 3 Comments   
Filed under ,
ASP.NET Tips: How to capture a dump
There are multiple ways to capture a dump.  There are some examples discussed in my previous post, HOWTO- Capture a dump on a specific managed exception .  You can just use DebugDiag to capture a dump.  The easiest way in DebugDiag is to Read More...
Posted 06 April 08 10:44 by Tom | 6 Comments   
Filed under , , ,
ASP.NET Tips: Debugger command you may not know about – converttickstodate
Here is another command that can really help to figure out what is happening.  If you have spent much time looking at managed dumps, you have probably come across the problem of trying to look at a System.DateTime or System.TimeSpan object.  Read More...
Posted 05 April 08 10:00 by Tom | 8 Comments   
Filed under ,
Debugging videos anyone?
I am considering creating some videos showing some debugging tips.  My original idea is to create short videos that just some doing some specific things.  So not full debug sessions, but rather specific parts.  So that when you are debugging, Read More...
ASP.NET Tips: Debugger command you may not know about - gcref
During the course of debugging, often times you will find an object that you would like to know where it came from (who allocated the object).  The first command you will want to run is !gcroot .  But this command will only find the object if Read More...
Posted 03 April 08 11:22 by Tom | 6 Comments   
Filed under , ,
Silverlight information and some cool videos around it
So there has been a lot of information released around Silverlight and the new version which works with ASP.NET (Silverlight 2.0). There have been some amazing videos created showing off all that Silverlight can do.  For example: And the really cool Read More...
Posted 03 April 08 12:06 by Tom | 4 Comments   
Filed under , ,
Tips for IE8
So after using IE8 for a while now, there are a few things that are useful for people to keep in mind.  First, there are a lot of changes in IE8.  I am really excited about some of them, such as WebSlices.  They give you the ability to Read More...
Posted 02 April 08 11:12 by Tom | 9 Comments   
Filed under ,
RECAP: ASP.NET Blog Chat
Thanks to everyone that attended the chat we had today on Tess and my pages.  I think it went really well and we are going to continue these in the future and hopefully get to some more topics. I just wanted to let everyone know that we are going Read More...
Posted 02 April 08 11:36 by Tom | 7 Comments   
Filed under , , , ,
ASP.NET Blog Chat
Welcome to the first blog chat for ASP.NET Debugging.  I hope you enjoy this and please let me know your comments on the experience.  I am planning on posting a recap of the conversation (or question and answers) after we are done to the blog Read More...
Posted 02 April 08 09:56 by Tom | 2 Comments   
Filed under , , ,
ASP.NET Tips: Debugger command you may not know about – finddebugmodules
So there are a couple different things that can affect performance of your ASP.NET application.  One of them is if you are running with debug builds of your files.  This is where this command comes in.  When run, it will tell you any modules Read More...
Posted 01 April 08 03:00 by Tom | 4 Comments   
Filed under , ,
Useful appcmd commands
So with IIS7, there is a new way to get data out about your web server, using the new appcmd.exe process. To start out with, the best place to start is with: Things you can do by piping appcmd commands There are a lot of useful commands listed there that Read More...
Posted 01 April 08 09:38 by Tom | 1 Comments   
Filed under ,

Search

This Blog

Syndication

Page view tracker