次の方法で共有


COleDispatchDriver::InvokeHelper

wFlagsで指定されたコンテキストで dwDispIDで指定されているオブジェクトのメソッドまたはプロパティを呼び出します。

void AFX_CDECL InvokeHelper(
   DISPID dwDispID,
   WORD wFlags,
   VARTYPE vtRet,
   void* pvRet,
   const BYTE* pbParamInfo,
   ... 
);

パラメーター

  • dwDispID
    呼び出されるメソッドまたはプロパティを識別します。

  • wFlags
    IDispatch::Invoke の呼び出しのコンテキストを示すフラグ。.使用できる値の一覧については、Windows SDKの IDispatch::Invoke の wFlags のパラメーターを参照してください。

  • vtRet
    戻り値の型。有効な値については、"解説"を参照してください。

  • pvRet
    戻り値、またはプロパティ値を受け取る変数のアドレス。この変数の型は、vtRet で指定された型と一致している必要があります。

  • pbParamInfo
    pbParamInfo に続くパラメーターの型を指定するバイト列の NULL で終わる文字列へのポインター。

  • ...
    パラメーターの可変リスト。それぞれの型は pbParamInfo で指定されます。

解説

パラメーター pbParamInfo には、メソッドまたはプロパティに渡されるパラメーターの型を指定します。引数リストは構文の ... で表されます。

vtRet の引数の値には VARENUM の列挙体から取得されます。次の値を指定できます。

シンボル

戻り値の型

VT_EMPTY

void

VT_I2

short

VT_I4

long

VT_R4

float

VT_R8

double

VT_CY

CY

VT_DATE

DATE

VT_BSTR

BSTR

VT_DISPATCH

LPDISPATCH

VT_ERROR

SCODE

VT_BOOL

BOOL

VT_VARIANT

VARIANT

VT_UNKNOWN

LPUNKNOWN

pbParamInfo の引数は VTS_ の定数のスペース区切りのリストです。これらの値の一つ以上は、空白 (コンマでなく) で区切って、関数のパラメーター リストを指定します。指定できる値は EVENT_CUSTOM のマクロに示します。

この関数は VARIANTARG のパラメーターを値に変換し、IDispatch::Invoke のメソッドを呼び出します。Invoke の呼び出しが失敗した場合は、例外をスローします。SCODE (ステータス コード) が IDispatch::Invoke によって DISP_E_EXCEPTIONの場合、この関数は COleException オブジェクトの返される; それ以外の場合は COleDispatchExceptionをスローします。

詳細については、Windows SDKの VARIANTARGImplementing the IDispatch InterfaceIDispatch::InvokeCOM エラー コードの構造 を参照してください。

使用例

COleDispatchDriver::CreateDispatchの例を参照してください。

必要条件

ヘッダー : afxdisp.h

参照

関連項目

COleDispatchDriver クラス

階層図

COleException クラス

COleDispatchException クラス