Exceptions : exceptions OLE
Les techniques et les installations de gestion des exceptions dans OLE sont les mêmes que celles de gestion d’autres exceptions. Pour plus d’informations sur la gestion des exceptions, consultez l’article Bonnes pratiques modernes en C++ pour les exceptions et la gestion des erreurs.
Tous les objets d’exception sont dérivés de la classe CException
de base abstraite . MFC fournit deux classes pour la gestion des exceptions OLE :
COleException pour la gestion des exceptions OLE générales.
COleDispatchException pour générer et gérer des exceptions ole dispatch (automation).
La différence entre ces deux classes est la quantité d’informations qu’elles fournissent et l’endroit où elles sont utilisées. COleException
possède un membre de données public qui contient le code d’état OLE pour l’exception. COleDispatchException
fournit plus d’informations, notamment les éléments suivants :
Code d’erreur spécifique à l’application
Description d’erreur, telle que « Disque complet »
Contexte d’aide que votre application peut utiliser pour fournir des informations supplémentaires à l’utilisateur
Nom du fichier d’aide de votre application
Nom de l’application qui a généré l’exception
COleDispatchException
fournit plus d’informations afin qu’il puisse être utilisé avec des produits tels que Microsoft Visual Basic. La description verbale de l’erreur peut être utilisée dans une boîte de message ou une autre notification ; Les informations d’aide peuvent être utilisées pour aider l’utilisateur à répondre aux conditions qui ont provoqué l’exception.
Deux fonctions globales correspondent aux deux classes d’exception OLE : AfxThrowOleException et AfxThrowOleDispatchException. Utilisez-les pour lever des exceptions OLE générales et des exceptions de répartition OLE, respectivement.