Freigeben über


ITypeInfo:: Invoke

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

Ruft eine Methode, oder greift auf eine Eigenschaft eines Objekts, das die von der Typenbeschreibung beschriebene Schnittstelle implementiert.

HRESULT Invoke(  
  VOID FAR  *pvInstance,     
  MEMBERID  memid,           
  unsigned short  wFlags,    
  DISPPARAMS FAR  *pDispParams,  
  VARIANT FAR  *pVarResult,  
  EXCEPINFO FAR  *pExcepInfo,  
  unsigned int FAR  *puArgErr  
);

Parameter

  • pvInstance
    Zeiger auf eine Instanz der von dieser Typenbeschreibung beschriebene Schnittstelle.

  • memid
    Identifiziert den Schnittstellenmember.

  • wFlags
    Flags, die wie folgt den Kontext des Invoke-Aufrufs beschreiben:

    Wert

    Beschreibung

    DISPATCH_METHOD

    Der Member wird als eine Methode zugegriffen. Bei Mehrdeutigkeit kann dies und DISPATCH_PROPERTYGET-Flag festgelegt werden.

    DISPATCH_PROPERTYGET

    Der Member wird als eine Eigenschaft oder als Datenmember abgerufen.

    DISPATCH_PROPERTYPUT

    Der Member wird als eine Eigenschaft oder als Datenmember geändert.

    DISPATCH_PROPERTYPUTREF

    Der Member wird mithilfe von einen Wert zuweisen, anstatt eine Verweis-Zuordnung geändert. Dieser Wert ist nur gültig, wenn die Eigenschaft einen Verweis auf ein Objekt akzeptiert.

  • pDispParams
    Verweist auf eine Struktur, die ein Array von Argumenten und ein Array von DISPIDs für benannte Argumente und zählt die Anzahl der Elemente in jedem Array enthält.

  • pVarResult
    Sollte Null, wenn der Aufrufer keine Ergebnis. Andernfalls sollte es einen Zeiger auf den Speicherort sein, an dem das Ergebnis ist gespeichert werden. If wFlags specifies DISPATCH_PROPERTYPUT or DISPATCH_PROPERTYPUTREF, pVarResultis ignored.

  • pExcepInfo
    Verweist auf eine Struktur für Ausnahmeinformationen, die nur bei DISP_E_EXCEPTION wird aufgefüllt. If pExcepInfois Null on input, only an HRESULT error will be returned.

  • puArgErr
    Wenn Invoke DISP_E_TYPEMISMATCH zurückgibt, gibt puArgErr den Index (innerhalb von rgvarg) des Arguments mit falschen Typ. Wenn mehr als ein Argument einen Fehler zurückgibt, gibt puArgErr nur das erste Argument mit einem Fehler. Argumente in pDispParams->rgvarg werden in umgekehrter Reihenfolge angezeigt, sodass das erste Argument der mit den höchsten Index in das Array ist. Null darf nicht sein.

Rückgabewert

Der Rückgabewert vom zurückgegebenen HRESULT ist eine der folgenden:

Rückgabewert

Bedeutung

S_OK

Erfolg.

E_INVALIDARG

Eine oder mehrere der Argumente ist ungültig.

DISP_E_EXCEPTION

Der aufgerufene Member hat einen Fehler HRESULT zurückgegeben. Wenn der Member IErrorInfo implementiert, sind Details im Fehlerobjekt verfügbar. Otherwise, the pExcepInfoparameter contains details.

Andere Rückgabecodes

IDispatch:: Invoke Fehler kann auch zurückgegeben werden.

Hinweise

Verwenden Sie die Funktion-ITypeInfo:: Invoke Zugriff auf einen Member eines Objekts oder Aufrufen einer Methode, die die von dieser Typenbeschreibung beschriebene Schnittstelle implementiert. Für Objekte, die die IDispatch -Schnittstelle unterstützen, können Sie InvokeIDispatch:: Invoke implementieren.

ITypeInfo:: Invoke verwendet einen Zeiger auf eine Instanz der Klasse. Parameter sind, andernfalls ms221479(v=vs.100).mdIDispatch:: Invoke identisch, außer dass ITypeInfo:: Invoke die refiidlcid Parameter und unterdrückt. Wenn aufgerufen, führt ITypeInfo:: InvokeIDispatch:: Invoke Parameter für die angegebene Instanz beschriebenen Aktionen.

Für VTBL-Schnittstellenmember übergibt ITypeInfo:: Invoke die LCID der Typinformationen in Parameter mit Attributs ms221363(v=vs.100).md Lcid und den zurückgegebenen Wert in Attributs https://msdn.microsoft.com/de-de/library/ms221035(v=vs.100) Retval markiert.

Wenn die Typbeschreibung von einem anderen Typenbeschreibung erbt, recurses diese Funktion auf die Beschreibung Basistyp, um das Element mit der angeforderte Member-ID suchen

Siehe auch

Referenz

ITypeInfo-Schnittstelle