Partager via


Assistant Débogage managé invalidIUnknown

L'Assistant Débogage managé (MDA, Managed Debugging Assistant) invalidIUnknown est activé lorsqu'un pointeur IUnknown non valide est passé au code managé à partir du code natif. IUnknown ne peut pas retourner un succès lorsqu'il est interrogé sur l'interface IUnknown.

Symptômes

Une erreur inattendue se produit lorsqu'un pointeur d'interface COM est marshalé pendant le marshaling d'argument.

Cause

Une implémentation QueryInterface incorrecte sur l'interface COM passée au CLR.

Solution

Corrigez l'implémentation QueryInterface.

Effet sur le runtime

Ce MDA n'a aucun effet sur le CLR.

Sortie

La description de l'erreur.

Configuration

<mdaConfig>
  <assistants>
    <invalidIUnknown />
  </assistants>
</mdaConfig>

Voir aussi

Référence

MarshalAsAttribute

Concepts

Diagnostic d'erreurs avec les Assistants de débogage managés

Marshaling d'interopérabilité

Autres ressources

Interopérabilité