Win32 API 日本語リファレンス
ホームSystem.Com › ITypeLibRegistration

ITypeLibRegistration

COM
IID76a3e735-02df-4a12-98eb-043ad3600af3継承元IUnknown自前メソッド開始 vtbl3

メソッド 8

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

vtbl 3 HRESULT GetGuid(GUID* pGuid)
pGuidGUID*out登録されたタイプライブラリの GUID を受け取る。
vtbl 4 HRESULT GetVersion(LPWSTR* pVersion)
pVersionLPWSTR*outタイプライブラリのバージョンを表す文字列を受け取る。
vtbl 5 HRESULT GetLcid(DWORD* pLcid)
pLcidDWORD*outタイプライブラリのロケール識別子(LCID)を受け取る。
vtbl 6 HRESULT GetWin32Path(LPWSTR* pWin32Path)
pWin32PathLPWSTR*out32 ビット版タイプライブラリのファイルパスを文字列として受け取る。
vtbl 7 HRESULT GetWin64Path(LPWSTR* pWin64Path)
pWin64PathLPWSTR*out64 ビット版タイプライブラリのファイルパスを文字列として受け取る。
vtbl 8 HRESULT GetDisplayName(LPWSTR* pDisplayName)
pDisplayNameLPWSTR*outタイプライブラリの表示名を文字列として受け取る。
vtbl 9 HRESULT GetFlags(DWORD* pFlags)
pFlagsDWORD*outタイプライブラリの登録フラグを受け取る。
vtbl 10 HRESULT GetHelpDir(LPWSTR* pHelpDir)
pHelpDirLPWSTR*outタイプライブラリのヘルプファイルが置かれているディレクトリのパスを文字列として受け取る。

HSP用 COM定義

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

出力引数:
#define global IID_ITypeLibRegistration "{76A3E735-02DF-4A12-98EB-043AD3600AF3}"
#usecom global ITypeLibRegistration IID_ITypeLibRegistration "{}"
#comfunc global ITypeLibRegistration_GetGuid         3 var
#comfunc global ITypeLibRegistration_GetVersion      4 var
#comfunc global ITypeLibRegistration_GetLcid         5 var
#comfunc global ITypeLibRegistration_GetWin32Path    6 var
#comfunc global ITypeLibRegistration_GetWin64Path    7 var
#comfunc global ITypeLibRegistration_GetDisplayName  8 var
#comfunc global ITypeLibRegistration_GetFlags        9 var
#comfunc global ITypeLibRegistration_GetHelpDir      10 var
; ※数字は vtbl インデックス(0始まり)。0/1/2 は IUnknown(QueryInterface/AddRef/Release)。
; ※このインターフェースは直接 CoCreateInstance するクラスIDが無いため "{}"(他メソッド/アクティベーションで取得)。
; ※出力/バッファ引数は var(変数直渡し)。varptr 方式にも切替可。