Ausnahmen: OLE-Ausnahmen
Die Techniken und Möglichkeiten zum Behandeln von Ausnahmen in OLE sind identisch mit denen für die Behandlung anderer Ausnahmen. Weitere Informationen zur Ausnahmebehandlung finden Sie im Artikel Modern C++ bewährte Methoden für Ausnahmen und Fehlerbehandlung.
Alle Ausnahmeobjekte werden von der abstrakten Basisklasse CException
abgeleitet. MFC bietet zwei Klassen für die Behandlung von OLE-Ausnahmen:
COleException Für die Behandlung allgemeiner OLE-Ausnahmen.
COleDispatchException Zum Generieren und Behandeln von OLE-Verteilerausnahmen (Automation)
Der Unterschied zwischen diesen beiden Klassen ist die Menge an Informationen, die sie bereitstellen und wo sie verwendet werden. COleException
verfügt über ein öffentliches Datenelement, das den OLE-Statuscode für die Ausnahme enthält. COleDispatchException
liefert weitere Informationen, einschließlich der folgenden:
Anwendungsspezifischer Fehlercode
Eine Fehlerbeschreibung, z. B. "Datenträger voll"
Ein Hilfekontext, den Ihre Anwendung verwenden kann, um zusätzliche Informationen für den Benutzer bereitzustellen
Der Name der Hilfedatei Ihrer Anwendung
Der Name der Anwendung, die die Ausnahme generiert hat
COleDispatchException
stellt weitere Informationen bereit, damit sie mit Produkten wie Microsoft Visual Basic verwendet werden kann. Die verbale Fehlerbeschreibung kann in einem Meldungsfeld oder einer anderen Benachrichtigung verwendet werden; Die Hilfeinformationen können verwendet werden, um dem Benutzer zu helfen, auf die Bedingungen zu reagieren, die die Ausnahme verursacht haben.
Zwei globale Funktionen entsprechen den beiden OLE-Ausnahmeklassen: AfxThrowOleException und AfxThrowOleDispatchException. Verwenden Sie sie, um allgemeine OLE-Ausnahmen bzw. OLE-Dispatch-Ausnahmen auszuwerfen.