Collecting from and configuring multiple COM objects



If I have a COM object that calls nine others and there is a problem with the ninth, but I only configured the first, what kind of information will I get?  Just the error?  Will I receive some idea of what COM objects this object called so I can add them to the session?  Would I even see the error in any sort of meaningful context?


DA will vary from application to application.  If the COM object is loaded into the same process that is being monitored by DA, then DA may be able to display an error even though the object was not explicitly specified as a target.  The error may be displayed within a very high-level context if some or most of the intermediary COM objects that were called prior to the error occurring were not specified as targets.

This is another case where the transition graphs can shed some light on what the application is doing.  The "Events by Windows Module of Implementation" graph will show the names of the DLLs that DA detected as having been loaded into the process.  Among these DLLs should be the DLLs in which the COM objects are implemented.  These DLLs could then be added as targets of the workspace (by adding the DLL names under the "Targets | COM Components"  folder).  When the session is run again, DA will now be able to monitor the method calls made to the COM objects implemented in the specified DLLs.

Also, the "Create COM object of type ..." summary events and the "Events by COM Class" transition graph will show the ProgIDs of the components created during a session.

Old KB# 12057
Comment List
Related Discussions