I have inherited two complicated COM objects. One was derived from the other and (allegedly) the GUIDs, etc., were all changed so that they should not interfere. They do interfere and so far our debugging has not identified the culprit -- we've done registry compares and source code diffs and looked through the SCCS checkins. Obviously we're missing something, but they're big and complicated enough that I'm not surprised.
Is there a tool which can help, perhaps by checking COM objects for good behavior or detecting clashes between two COM objects or analyzing the registry?