Partager via


Gestion des erreurs d’administration COM+

Les erreurs générées lors de l’utilisation des objets COMAdmin sont signalées de deux manières , comme suit :

  • Utilisation de codes d’erreur spécifiques à la bibliothèque COMAdmin.
  • Utilisation des informations d’erreur étendues disponibles dans une collection ErrorInfo spéciale.

Codes d’erreur

Vous gérez les codes d’erreur d’administration comme vous le feriez pour tout message d’erreur COM. Dans Microsoft Visual C++, ces codes sont retournés en tant que valeurs HRESULT. Dans Microsoft Visual Basic, elles sont levées en tant qu’exceptions que vous pouvez intercepter. Pour les programmeurs C++, les codes d’erreur d’administration COM+ sont définis dans Winerror.h. Pour les programmeurs Visual Basic, ils sont disponibles via l’IDE Visual Basic.

ErrorInfo Collection

Lorsqu’une erreur se produit, signalée par un type de code d’échec, des informations plus détaillées peuvent être disponibles, en fonction de la nature de l’erreur. Les objets COMAdmin fournissent des informations étendues dans les cas où la cause précise de la défaillance est difficile à déterminer sans rapport détaillé, par exemple avec plusieurs opérations de lecture et d’écriture.

Par exemple, lorsque vous utilisez des méthodes telles que Populate et SaveChanges sur un objet COMAdminCatalogCollection , vous pouvez lire ou écrire des données pour chaque élément de la collection. Des erreurs compliquées peuvent se produire et elles peuvent être difficiles à diagnostiquer en fonction d’un seul code d’erreur numérique. Par conséquent, la bibliothèque COMAdmin émet des informations d’erreur étendues via une collection spéciale.

Lorsque des informations d’erreur étendues sont disponibles, elles sont placées dans la collection ErrorInfo liée à la collection d’origine qui a eu l’erreur. Pour récupérer le rapport d’erreurs, récupérez la collection ErrorInfo liée à la collection d’origine et examinez les éléments qu’elle contient. Vous pouvez récupérer la collection ErrorInfo à l’aide de GetCollection sur COMAdminCatalogCollection, en laissant le deuxième paramètre vide où vous spécifiez normalement la propriété Key d’un élément parent.

Lorsque vous obtenez une erreur, vous devez immédiatement obtenir et remplir la collection ErrorInfo pour la collection qui a échoué, sans effectuer d’autres opérations sur cette collection. Sinon, la collection ErrorInfo est réinitialisée et ne détaille pas cet échec.

Les éléments de la collection ErrorInfo exposent les propriétés de rapport d’erreurs spéciales MajorRef et MinorRef, qui détaillent la cause particulière de l’erreur. Pour plus d’informations, consultez ErrorInfo.

Opérations d’administration COM+ dans les transactions

Exemple d’introduction à l’utilisation du catalogue d’administration COM+

Vue d’ensemble des objets COMAdmin

Récupération de collections sur le catalogue COM+

Définition des propriétés et enregistrement des modifications apportées au catalogue COM+