A Faulting Module Is Not A Broken Module
Posted by William Diaz on January 14, 2011
It is not usually the case that a “faulting” module is the actual cause of an application error, crash, or hang. Take this example where Outlook was crashing each time after the user opened Outlook:
The error details point to mspst32.dll as the problem module. To really understand why Outlook was crashing, you need to go an extra step and find out what mspst32.dll does; for you Outlook gurus, the name should be enough to suggest the next course of actions. If you are not sure, find the module and look at its properties:
You can correctly assume that there is a problem with either a PST or, if the user is in Exchange cached mode, the local mailbox OST file. Since the user was not using personal folders, I knew the problem was with the OST. Since it would take some time to rebuild his OST, I disabled Exchange cached mode and offline folder use and had the OST recreated after hours, ultimately resolving the Outlook crashes. An alternative to doing this would be to run SCANOST.exe to scan and repair the local mailbox. SCANOST.exe and SCANPST.exe can be found in C:\Program Files\Common Files\System\MSMAPI\1033.
Here is another example:
In this case, Outlook was crashing when accessing a particular Outlook form. What is fm20.dll? Again, locate the file and its properties. It is the Microsoft Office Forms Control. That makes sense as we are trying to open an Outlook form. Other forms opened with no issue so I was certain the module was not the problem. Eventually, I tracked this down to our document management add-in for Outlook and the initial view the form was opening in. The problem was corrected by launching the form before opening Outlook, changing the view, and closing it to save the new view settings.
The important thing to take away from this is that it is easy to blame the faulting module when, in fact, the module is often the victim. You will find no shortage of bad advice on the Internet telling you to delete the file, replace it, reinstall or repair Outlook, Microsoft Office, ad infinitum. These are all knee jerk reactions with little educated thought behind them. I suppose, though, that nomenclature could stand to be more clearer.