Win32 API 日本語リファレンス
ホームWeb.MsHtml › IDebugCallbackNotificationHandler

IDebugCallbackNotificationHandler

COM
IID30510842-98b5-11cf-bb82-00aa00bdce0b継承元IUnknown自前メソッド開始 vtbl3

メソッド 7

vtbl = vtable インデックス(0始まり)。HSP等からCOMメソッドをインデックス指定で呼ぶ際に使用します。0〜2 は IUnknown。

vtbl 3 HRESULT RequestedCallbackTypes(DWORD* pCallbackMask)
pCallbackMaskDWORD*out通知を希望するコールバック種別を示すビットマスクを受け取る DWORD へのポインタである。
vtbl 4 HRESULT BeforeDispatchEvent(IUnknown* pEvent)
pEventIUnknown*inディスパッチされようとしているイベントを表す IUnknown へのポインタである。
vtbl 5 HRESULT DispatchEventComplete(IUnknown* pEvent, DWORD propagationStatus)
pEventIUnknown*inディスパッチが完了したイベントを表す IUnknown へのポインタである。
propagationStatusDWORDinイベント伝播の状態を示す値を指定する。
vtbl 6 HRESULT BeforeInvokeDomCallback(IUnknown* pEvent, IScriptEventHandler* pCallback, DOM_EVENT_PHASE eStage, DWORD propagationStatus)
pEventIUnknown*in対象となる DOM イベントを表す IUnknown へのポインタである。
pCallbackIScriptEventHandler*in呼び出されようとしている DOM イベントハンドラを表す IScriptEventHandler へのポインタである。
eStageDOM_EVENT_PHASEinイベント伝播の段階(キャプチャ、ターゲット、バブリング)を示す DOM_EVENT_PHASE を指定する。
propagationStatusDWORDinイベント伝播の現在の状態を示す値を指定する。
vtbl 7 HRESULT InvokeDomCallbackComplete(IUnknown* pEvent, IScriptEventHandler* pCallback, DOM_EVENT_PHASE eStage, DWORD propagationStatus)
pEventIUnknown*in対象となった DOM イベントを表す IUnknown へのポインタである。
pCallbackIScriptEventHandler*in呼び出しが完了した DOM イベントハンドラを表す IScriptEventHandler へのポインタである。
eStageDOM_EVENT_PHASEinイベント伝播の段階を示す DOM_EVENT_PHASE を指定する。
propagationStatusDWORDinイベント伝播の現在の状態を示す値を指定する。
vtbl 8 HRESULT BeforeInvokeCallback(SCRIPT_TIMER_TYPE eCallbackType, DWORD callbackCookie, IDispatch* pDispHandler, ULONGLONG ullHandlerCookie, LPWSTR functionName, DWORD line, DWORD column, DWORD cchLength, IUnknown* pDebugDocumentContext)
eCallbackTypeSCRIPT_TIMER_TYPEinコールバックの種別(タイマーなど)を示す SCRIPT_TIMER_TYPE を指定する。
callbackCookieDWORDinコールバックを識別するクッキー値を指定する。
pDispHandlerIDispatch*in呼び出されようとしているハンドラを表す IDispatch へのポインタである。
ullHandlerCookieULONGLONGinハンドラを識別する一意のクッキー値を指定する。
functionNameLPWSTRinoptional呼び出される関数の名前を示す文字列を指定する。
lineDWORDinハンドラのソース内の行番号を指定する。
columnDWORDinハンドラのソース内の列番号を指定する。
cchLengthDWORDinハンドラのソース範囲の文字数を指定する。
pDebugDocumentContextIUnknown*inoptionalハンドラに対応するデバッグドキュメントコンテキストを表す IUnknown へのポインタである。
vtbl 9 HRESULT InvokeCallbackComplete(SCRIPT_TIMER_TYPE eCallbackType, DWORD callbackCookie, IDispatch* pDispHandler, ULONGLONG ullHandlerCookie, LPWSTR functionName, DWORD line, DWORD column, DWORD cchLength, IUnknown* pDebugDocumentContext)
eCallbackTypeSCRIPT_TIMER_TYPEinコールバックの種別を示す SCRIPT_TIMER_TYPE を指定する。
callbackCookieDWORDinコールバックを識別するクッキー値を指定する。
pDispHandlerIDispatch*in呼び出しが完了したハンドラを表す IDispatch へのポインタである。
ullHandlerCookieULONGLONGinハンドラを識別する一意のクッキー値を指定する。
functionNameLPWSTRinoptional呼び出された関数の名前を示す文字列を指定する。
lineDWORDinハンドラのソース内の行番号を指定する。
columnDWORDinハンドラのソース内の列番号を指定する。
cchLengthDWORDinハンドラのソース範囲の文字数を指定する。
pDebugDocumentContextIUnknown*inoptionalハンドラに対応するデバッグドキュメントコンテキストを表す IUnknown へのポインタである。

HSP用 COM定義

#usecom / #comfunc によるHSPのCOM呼び出し定義。数字は vtbl インデックス(0始まり)。クラスIDが無い場合 #usecom の末尾は "{}"、ある場合は "{CLSID}"

出力引数:
#define global IID_IDebugCallbackNotificationHandler "{30510842-98B5-11CF-BB82-00AA00BDCE0B}"
#usecom global IDebugCallbackNotificationHandler IID_IDebugCallbackNotificationHandler "{}"
#comfunc global IDebugCallbackNotificationHandler_RequestedCallbackTypes     3 var
#comfunc global IDebugCallbackNotificationHandler_BeforeDispatchEvent        4 sptr
#comfunc global IDebugCallbackNotificationHandler_DispatchEventComplete      5 sptr,int
#comfunc global IDebugCallbackNotificationHandler_BeforeInvokeDomCallback    6 sptr,sptr,int,int
#comfunc global IDebugCallbackNotificationHandler_InvokeDomCallbackComplete  7 sptr,sptr,int,int
#comfunc global IDebugCallbackNotificationHandler_BeforeInvokeCallback       8 int,int,sptr,int64,wstr,int,int,int,sptr
#comfunc global IDebugCallbackNotificationHandler_InvokeCallbackComplete     9 int,int,sptr,int64,wstr,int,int,int,sptr
; ※数字は vtbl インデックス(0始まり)。0/1/2 は IUnknown(QueryInterface/AddRef/Release)。
; ※このインターフェースは直接 CoCreateInstance するクラスIDが無いため "{}"(他メソッド/アクティベーションで取得)。
; ※出力/バッファ引数は var(変数直渡し)。varptr 方式にも切替可。
; ※ハンドル/void*等の不透明ポインタは IronHSP では intptr 指定が可能。