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

ISyncChangeBatchBase2

COM
IID6fdb596a-d755-4584-bd0c-c0c23a548fbf継承元ISyncChangeBatchBase自前メソッド開始 vtbl17

メソッド 1

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

vtbl 17 HRESULT SerializeWithOptions(SYNC_SERIALIZATION_VERSION targetFormatVersion, DWORD dwFlags, BYTE* pbBuffer, DWORD* pdwSerializedSize)
targetFormatVersionSYNC_SERIALIZATION_VERSIONinシリアル化の出力対象とするシリアル化形式バージョン (SYNC_SERIALIZATION_VERSION) を指定する。
dwFlagsDWORDinシリアル化の動作を制御するフラグを指定する。
pbBufferBYTE*inoutシリアル化された結果のバイト列を受け取るバッファへのポインタである。NULL を渡すと必要なサイズのみを取得できる。
pdwSerializedSizeDWORD*inout入力時はバッファのバイト数を指定し、出力時は実際に必要なバイト数を受け取るポインタである。

HSP用 COM定義

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

出力引数:
#define global IID_ISyncChangeBatchBase2 "{6FDB596A-D755-4584-BD0C-C0C23A548FBF}"
#usecom global ISyncChangeBatchBase2 IID_ISyncChangeBatchBase2 "{}"
#comfunc global ISyncChangeBatchBase2_SerializeWithOptions  17 int,int,var,var
; ※数字は vtbl インデックス(0始まり)。0/1/2 は IUnknown(QueryInterface/AddRef/Release)。
; ※このインターフェースは直接 CoCreateInstance するクラスIDが無いため "{}"(他メソッド/アクティベーションで取得)。
; ※出力/バッファ引数は var(変数直渡し)。varptr 方式にも切替可。