Win32 API 日本語リファレンス
ホームSystem.Diagnostics.Debug.ActiveScript › IActiveScriptParseProcedure64

IActiveScriptParseProcedure64

COM
IIDc64713b6-e029-4cc5-9200-438b72890b6a継承元IUnknown自前メソッド開始 vtbl3

メソッド 1

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

vtbl 3 HRESULT ParseProcedureText(LPWSTR pstrCode, LPWSTR pstrFormalParams, LPWSTR pstrProcedureName, LPWSTR pstrItemName, IUnknown* punkContext, LPWSTR pstrDelimiter, ULONGLONG dwSourceContextCookie, DWORD ulStartingLineNumber, DWORD dwFlags, IDispatch** ppdisp)
pstrCodeLPWSTRinプロシージャ本体として解析するソースコードを指定する。
pstrFormalParamsLPWSTRinプロシージャの仮引数リストを記述した文字列を指定する。不要なら NULL でよい。
pstrProcedureNameLPWSTRin生成するプロシージャに付ける名前を指定する。
pstrItemNameLPWSTRinコードのコンテキストとなるアイテムの名前を指定する。不要なら NULL でよい。
punkContextIUnknown*inデバッグなどに使用するコンテキストオブジェクトの IUnknown へのポインタである。不要なら NULL でよい。
pstrDelimiterLPWSTRinソースコードの終端を示す区切り文字列を指定する。不要なら NULL でよい。
dwSourceContextCookieULONGLONGinデバッグ時にこのソースを識別するためのアプリケーション定義 64 ビットクッキーを指定する。
ulStartingLineNumberDWORDinソースコードの開始行番号(0 起算)を指定する。
dwFlagsDWORDinプロシージャの解析方法を制御する SCRIPTPROC フラグを指定する。
ppdispIDispatch**out生成されたプロシージャを呼び出すための IDispatch インターフェイスへのポインタを受け取る。

HSP用 COM定義

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

#define global IID_IActiveScriptParseProcedure64 "{C64713B6-E029-4CC5-9200-438B72890B6A}"
#usecom global IActiveScriptParseProcedure64 IID_IActiveScriptParseProcedure64 "{}"
#comfunc global IActiveScriptParseProcedure64_ParseProcedureText  3 wstr,wstr,wstr,wstr,sptr,wstr,int64,int,int,sptr
; ※数字は vtbl インデックス(0始まり)。0/1/2 は IUnknown(QueryInterface/AddRef/Release)。
; ※このインターフェースは直接 CoCreateInstance するクラスIDが無いため "{}"(他メソッド/アクティベーションで取得)。
; ※ハンドル/void*等の不透明ポインタは IronHSP では intptr 指定が可能。