Win32 API 日本語リファレンス
ホームData.HtmlHelp › IITPropList

IITPropList

COM
IID1f403bb1-9997-11d0-a850-00aa006c7d01継承元IPersistStreamInit自前メソッド開始 vtbl9

メソッド 18

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

vtbl 9 HRESULT Set(DWORD PropID, LPWSTR lpszwString, DWORD dwOperation)
PropIDDWORDin設定するプロパティを識別する ID である。
lpszwStringLPWSTRin設定する文字列値を示す NULL 終端ワイド文字列である。
dwOperationDWORDin追加・置換などの設定操作を指定するフラグである。
vtbl 10 HRESULT Set(DWORD PropID, void* lpvData, DWORD cbData, DWORD dwOperation)
PropIDDWORDin設定するプロパティを識別する ID である。
lpvDatavoid*inout設定するバイナリデータへのポインタである。
cbDataDWORDinlpvData が指すデータのバイトサイズである。
dwOperationDWORDin追加・置換などの設定操作を指定するフラグである。
vtbl 11 HRESULT Set(DWORD PropID, DWORD dwData, DWORD dwOperation)
PropIDDWORDin設定するプロパティを識別する ID である。
dwDataDWORDin設定する数値プロパティ値である。
dwOperationDWORDin追加・置換などの設定操作を指定するフラグである。
vtbl 12 HRESULT Add(CProperty* Prop)
PropCProperty*inoutリストへ追加するプロパティを表す CProperty オブジェクトへのポインタである。
vtbl 13 HRESULT Get(DWORD PropID, CProperty* Property)
PropIDDWORDin取得するプロパティを識別する ID である。
PropertyCProperty*inout取得したプロパティ値を受け取る CProperty オブジェクトへのポインタである。
vtbl 14 HRESULT Clear()
vtbl 15 HRESULT SetPersist(BOOL fPersist)
fPersistBOOLinTRUE で永続化対象とし、FALSE で対象外とする真偽値である。
vtbl 16 HRESULT SetPersist(DWORD PropID, BOOL fPersist)
PropIDDWORDin永続化属性を設定する個別プロパティの ID である。
fPersistBOOLinTRUE で永続化対象とし、FALSE で対象外とする真偽値である。
vtbl 17 HRESULT GetFirst(CProperty* Property)
PropertyCProperty*inout列挙の先頭プロパティを受け取る CProperty オブジェクトへのポインタである。
vtbl 18 HRESULT GetNext(CProperty* Property)
PropertyCProperty*inout列挙の次のプロパティを受け取る CProperty オブジェクトへのポインタである。
vtbl 19 HRESULT GetPropCount(INT* cProp)
cPropINT*inoutリスト内のプロパティ数を受け取る出力ポインタである。
vtbl 20 HRESULT SaveHeader(void* lpvData, DWORD dwHdrSize)
lpvDatavoid*inoutヘッダーを書き出す出力バッファへのポインタである。
dwHdrSizeDWORDinlpvData バッファのバイトサイズである。
vtbl 21 HRESULT SaveData(void* lpvHeader, DWORD dwHdrSize, void* lpvData, DWORD dwBufSize)
lpvHeadervoid*inout対応するヘッダーデータへのポインタである。
dwHdrSizeDWORDinlpvHeader が指すヘッダーのバイトサイズである。
lpvDatavoid*inout本体データを書き出す出力バッファへのポインタである。
dwBufSizeDWORDinlpvData バッファのバイトサイズである。
vtbl 22 HRESULT GetHeaderSize(DWORD* dwHdrSize)
dwHdrSizeDWORD*inoutシリアライズに必要なヘッダーのバイトサイズを受け取る出力ポインタである。
vtbl 23 HRESULT GetDataSize(void* lpvHeader, DWORD dwHdrSize, DWORD* dwDataSize)
lpvHeadervoid*inoutサイズ算出に用いるヘッダーデータへのポインタである。
dwHdrSizeDWORDinlpvHeader が指すヘッダーのバイトサイズである。
dwDataSizeDWORD*inout本体データのバイトサイズを受け取る出力ポインタである。
vtbl 24 HRESULT SaveDataToStream(void* lpvHeader, DWORD dwHdrSize, IStream* pStream)
lpvHeadervoid*inout対応するヘッダーデータへのポインタである。
dwHdrSizeDWORDinlpvHeader が指すヘッダーのバイトサイズである。
pStreamIStream*inデータを書き出す対象の IStream である。
vtbl 25 HRESULT LoadFromMem(void* lpvData, DWORD dwBufSize)
lpvDatavoid*inoutプロパティリストを復元する元データへのポインタである。
dwBufSizeDWORDinlpvData が指すデータのバイトサイズである。
vtbl 26 HRESULT SaveToMem(void* lpvData, DWORD dwBufSize)
lpvDatavoid*inoutプロパティリストを書き出す出力バッファへのポインタである。
dwBufSizeDWORDinlpvData バッファのバイトサイズである。

HSP用 COM定義

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

出力引数:
#define global IID_IITPropList "{1F403BB1-9997-11D0-A850-00AA006C7D01}"
#usecom global IITPropList IID_IITPropList "{}"
#comfunc global IITPropList_Set               9 int,wstr,int
#comfunc global IITPropList_Set               10 int,sptr,int,int
#comfunc global IITPropList_Set               11 int,int,int
#comfunc global IITPropList_Add               12 var
#comfunc global IITPropList_Get               13 int,var
#comfunc global IITPropList_Clear             14
#comfunc global IITPropList_SetPersist        15 int
#comfunc global IITPropList_SetPersist        16 int,int
#comfunc global IITPropList_GetFirst          17 var
#comfunc global IITPropList_GetNext           18 var
#comfunc global IITPropList_GetPropCount      19 var
#comfunc global IITPropList_SaveHeader        20 sptr,int
#comfunc global IITPropList_SaveData          21 sptr,int,sptr,int
#comfunc global IITPropList_GetHeaderSize     22 var
#comfunc global IITPropList_GetDataSize       23 sptr,int,var
#comfunc global IITPropList_SaveDataToStream  24 sptr,int,sptr
#comfunc global IITPropList_LoadFromMem       25 sptr,int
#comfunc global IITPropList_SaveToMem         26 sptr,int
; ※数字は vtbl インデックス(0始まり)。0/1/2 は IUnknown(QueryInterface/AddRef/Release)。
; ※このインターフェースは直接 CoCreateInstance するクラスIDが無いため "{}"(他メソッド/アクティベーションで取得)。
; ※出力/バッファ引数は var(変数直渡し)。varptr 方式にも切替可。
; ※ハンドル/void*等の不透明ポインタは IronHSP では intptr 指定が可能。