Freigeben über


EXCEPINFO

Dieser Dokumentation für die Vorschau nur ist und in späteren Versionen geändert. Leere Themen wurden als Platzhalter eingefügt.]

Beschreibt eine Ausnahme, die während der IDispatch:: Invoke aufgetreten. Weitere Informationen über Ausnahmen finden Sie unter IDispatch:: Invoke und Dispatch-Schnittstelle und API-Funktionen- https://msdn.microsoft.com/de-de/library/ms221328(v=vs.100).

typedef struct FARSTRUCT tagEXCEPINFO
   {
   unsigned short wCode;                      // Error code.
   Unsigned short wReserved;                  // Reserved.
   BSTR bstrSource;                           // Exception source.
   BSTR bstrDescription;                      // Exception description.
   BSTR bstrHelpFile;                         // Help file path.
   Unsigned long dwHelpContext;               // Help context ID.
   Void FAR* pvReserved;                      // Reserved.
   HRESULT (STDAPICALLTYPE FAR* pfnDeferredFillIn) // Pointer to a
         (struct tagEXCEPINFO FAR*);               // function that
                                                   // fills in help and
                                                   // description info.
   SCODE scode;                               // Return value.
   } EXCEPINFO, FAR* LPEXCEPINFO;
 

Die folgende Tabelle beschreibt die Felder der Struktur EXCEPINFO.

Feldname

Typ

Beschreibung

wCode

unsigned short

Fehler-Code den Fehler identifiziert. Fehlercodes sollte größer als 1000 sein. Entweder dieses Feld oder Feld Scode muss; ausgefüllt werdender andere muss auf 0 festgelegt werden.

WReserved

unsigned short

Reserviert;sollte auf 0 festgelegt werden.

BstrSource

BSTR

Ein Text, lesbaren Name der Quelle der Ausnahme. Normalerweise ist dies ein Anwendungsname. Dieses Feld sollte von der Implementierung von IDispatch ausgefüllt.

BstrDescription

BSTR

Ein Text, lesbaren Beschreibung des Fehlers für Kunden vorgesehen. Wenn keine Beschreibung verfügbar ist, verwenden Sie NULL.

BstrHelpFile

BSTR

Der voll qualifizierte Laufwerk, Pfad und Dateinamen einer Hilfedatei, das Weitere Informationen über den Fehler enthält. Wenn keine Hilfe verfügbar ist, verwenden Sie NULL.

DwHelpContext

unsigned long

Die Hilfekontext-ID des Themas in der Hilfedatei. Dieses Feld muss ausgefüllt werden, wenn das BstrHelpFile-Feld nicht NULL ist.

PvReserved

void FAR 1

Muss auf NULL festgelegt werden.

PfnDeferredFillIn

STDAPICALLTYPE

Zeiger auf eine Funktion, die eine Struktur EXCEPINFO als Argument annimmt und gibt einen HRESULT-Wert zurück. Wenn zurückgestellt, Ausfüllen nicht gewünscht ist, dieses Feld sollte auf NULL festgelegt werden.

SCODE

SCODE

Ein Rückgabewert, der den Fehler beschreibt. Entweder dieses Feld oder wCode (aber nicht beide); müssen ausgefüllt werdender andere muss auf 0 festgelegt werden. (16-Bit-Versionen von Windows nur.)

Verwenden Sie Feld PfnDeferredFillIn, um ein Objekt zum verzögern im bstrDescription zurück, BstrHelpFileund DwHelpContext Felder ausfüllen, bis Sie benötigt werden zu aktivieren. Dieses Feld kann verwendet werden, z. B. wenn laden die Zeichenfolge für den Fehler ein zeitaufwändiger Vorgang ist. Um verzögerte auszufüllende zu verwenden, wird das Objekt versetzt einen Funktionszeiger in dieser Steckplatz und ist nicht ausfüllen keines der anderen Felder außer im wCode, die erforderlich ist.

Um zusätzliche Informationen zu erhalten, übergibt der Aufrufer die EXCEPINFO-Struktur wieder an die Pexcepinfo Callback-Funktion, die die zusätzlichen Informationen ausgefüllt. Wenn das ActiveX-Objekt und der ActiveX-Client in verschiedenen Prozessen sind, ruft das ActiveX-Objekt PfnDeferredFillIn vor der Rückgabe an den Controller.