Export (0) Print
Expand All

reportAvOnComRelease MDA

The reportAvOnComRelease managed debugging assistant (MDA) is activated when exceptions are thrown due to user reference counting errors while performing COM interop and using the Release or ReleaseComObject method combined with raw COM calls.

Access violations and memory corruption.

Occasionally, an exception is thrown due to user reference counting errors while performing COM interop and using the Release or ReleaseComObject method combined with raw COM calls. Normally, this exception is discarded because not doing so would cause an access violation in the CLR, bringing it down. When this assistant is enabled, such exceptions can be detected and reported instead of being simply discarded.

Examine your reference counting code and search for errors as well as examining the native clients of your object for reference counting errors.

Two modes are available. If the allowAv attribute is true, the assistant prevents the runtime from discarding the access violation. If allowAv is false, which is the default, the runtime discards the access violation, but a warning message is reported to the user to indicate that an exception was thrown and discarded.

If possible, the output contains the COM interface pointer's original vtable. Otherwise, an informational message is displayed.

<mdaConfig>
  <assistants>
    <reportAvOnComRelease />
  </assistants>
</mdaConfig>
Show:
© 2014 Microsoft