Dépannage des exceptions : System.Runtime.InteropServices.COMException
Mise à jour : novembre 2007
Une exception COMException est levée quand un HRESULT non reconnu est retourné d'un appel de méthode COM.
Conseils associés
Vérifier la propriété ErrorCode de l'exception pour déterminer le HRESULT retourné par l'objet COM
Lorsque le runtime rencontre un HRESULT inconnu, il lève une exception COMException qui inclut une propriété ErrorCode publique qui contient le HRESULT retourné par l'appel. Si un message d'erreur est disponible pour le runtime, le message est retourné à l'appelant. Si toutefois le développeur du composant COM a omis d'inclure un message d'erreur, le runtime retourne le HRESULT à huit chiffres à la place d'une chaîne de message. La présence d'un HRESULT permet à l'appelant de déterminer la cause de l'exception. Pour plus d'informations, consultez Comment : mapper des HRESULT et des exceptions.Désactiver le processus d'hébergement.
COM permet la communication entre Visual Studio et le processus d'hébergement. Comme il est utilisé avant l'exécution du code, un appel à CoInitializeSecurity entraîne la levée de cette exception.
Notes
Le Common Language Runtime transforme des HRESULT connus en exceptions .NET, ce qui permet à des objets COM de retourner des informations d'erreur pertinentes aux clients managés. Le mappage d'un HRESULT à une exception fonctionne également dans l'autre direction, en retournant des HRESULT spécifiques aux clients non managés.
Lorsque des paramètres à liaison tardive sont passés à des méthodes d'objets Microsoft Office, une exception COMException peut être levée lorsque les objets sont des objets COM. Le classeur tardif suppose que ces appels de méthode impliquent un paramètre ByRef et que la propriété que vous passez a un accesseur Set. Si la propriété n'a pas d'accesseur, le .NET Framework génère une exception MissingMethodException (HRESULT CORE_E_MISSINGMETHOD). Pour contourner ce problème, utilisez des objets à liaison anticipée ou passez une variable au lieu d'une propriété de l'objet.
Voir aussi
Tâches
Comment : en savoir plus sur une exception avec l'Assistant Exception
Concepts
Gestion des exceptions COM Interop