Undisposed is a tool to help track down .NET objects that have their finalizers executed by the CLR. It uses the CLR Profiling API to monitor object allocations and finalizations, and for each finalized object, it shows the stack trace of the constructor of that object.Instructions
Unzip package and register Undisposed.dll using regsvr32 Undisposed.dll. Launch UndisposedViewer.exe. Specify the executable which you want to monitor for undisposed objects, command line arguments if any, the location of the log file which will contain information about undisposed objects and their corresponding constructor stack traces, and the list of fully qualified type names to monitor.
Click Go. The executable will launch. Perform operations that exercise the code paths that create undisposed objects and exit the launched application. The log file will list the type of each undisposed object, followed by the stack trace of its constructor. UndisposedViewer.exe will automatically open the log file using Wordpad once the launched executable terminates.Registration errors
In case regsvr32.exe says "The application configuration is incorrect", please install the VC redistributable for VS 2008 from http://www.microsoft.com/downloads/details.aspx?FamilyID=9b2da534-3e03-4391-8a4d-074b9f2bc1bf&displaylang=en