Partager via


Éviter des exceptions à l'arrêt du CLR lors de l'utilisation d'objets COM générés avec /clr

Une fois que le Common Language Runtime (CLR) entre en mode d’arrêt, les fonctions natives ont un accès limité aux services CLR. Lorsque vous tentez d’appeler Release sur un objet COM compilé avec /clr, le CLR passe au code natif, puis revient en code managé pour traiter l’appel IUnknown ::Release (qui est défini dans le code managé). Le CLR empêche le rappel dans le code managé, car il est en mode arrêt.

Pour résoudre ce problème, assurez-vous que les destructeurs appelés à partir des méthodes Release contiennent uniquement du code natif.

Voir aussi

Assemblys mixtes (natif et managé)