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

ISyncChangeBatch2

COM
IID225f4a33-f5ee-4cc7-b039-67a262b4b2ac継承元ISyncChangeBatch自前メソッド開始 vtbl20

メソッド 2

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

vtbl 20 HRESULT AddMergeTombstoneMetadataToGroup(BYTE* pbOwnerReplicaId, BYTE* pbWinnerItemId, BYTE* pbItemId, SYNC_VERSION* pChangeVersion, SYNC_VERSION* pCreationVersion, DWORD dwWorkForChange, ISyncChangeBuilder** ppChangeBuilder)
pbOwnerReplicaIdBYTE*inアイテムを所有するレプリカの識別子を指すバッファへのポインタである。
pbWinnerItemIdBYTE*inマージ競合で残った勝者アイテムの識別子を指すバッファへのポインタである。
pbItemIdBYTE*inマージにより削除された(墓石化された)アイテムの識別子を指すバッファへのポインタである。
pChangeVersionSYNC_VERSION*inアイテムの変更バージョン (SYNC_VERSION) へのポインタである。
pCreationVersionSYNC_VERSION*inアイテムの作成バージョン (SYNC_VERSION) へのポインタである。
dwWorkForChangeDWORDinこの変更の処理に要する作業量を指定する。
ppChangeBuilderISyncChangeBuilder**out追加したマージ墓石変更にメタデータを設定するためのビルダー (ISyncChangeBuilder) を受け取る出力ポインタである。
vtbl 21 HRESULT AddMergeTombstoneLoggedConflict(BYTE* pbOwnerReplicaId, BYTE* pbWinnerItemId, BYTE* pbItemId, SYNC_VERSION* pChangeVersion, SYNC_VERSION* pCreationVersion, DWORD dwWorkForChange, ISyncKnowledge* pConflictKnowledge, ISyncChangeBuilder** ppChangeBuilder)
pbOwnerReplicaIdBYTE*inアイテムを所有するレプリカの識別子を指すバッファへのポインタである。
pbWinnerItemIdBYTE*inマージ競合で残った勝者アイテムの識別子を指すバッファへのポインタである。
pbItemIdBYTE*inマージにより削除された(墓石化された)アイテムの識別子を指すバッファへのポインタである。
pChangeVersionSYNC_VERSION*inアイテムの変更バージョン (SYNC_VERSION) へのポインタである。
pCreationVersionSYNC_VERSION*inアイテムの作成バージョン (SYNC_VERSION) へのポインタである。
dwWorkForChangeDWORDinこの変更の処理に要する作業量を指定する。
pConflictKnowledgeISyncKnowledge*inこの競合に関連付けられたナレッジ (ISyncKnowledge) へのポインタである。
ppChangeBuilderISyncChangeBuilder**out追加したマージ墓石競合にメタデータを設定するためのビルダー (ISyncChangeBuilder) を受け取る出力ポインタである。

HSP用 COM定義

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

出力引数:
#define global IID_ISyncChangeBatch2 "{225F4A33-F5EE-4CC7-B039-67A262B4B2AC}"
#usecom global ISyncChangeBatch2 IID_ISyncChangeBatch2 "{}"
#comfunc global ISyncChangeBatch2_AddMergeTombstoneMetadataToGroup  20 var,var,var,var,var,int,sptr
#comfunc global ISyncChangeBatch2_AddMergeTombstoneLoggedConflict   21 var,var,var,var,var,int,sptr,sptr
; ※数字は vtbl インデックス(0始まり)。0/1/2 は IUnknown(QueryInterface/AddRef/Release)。
; ※このインターフェースは直接 CoCreateInstance するクラスIDが無いため "{}"(他メソッド/アクティベーションで取得)。
; ※出力/バッファ引数は var(変数直渡し)。varptr 方式にも切替可。
; ※ハンドル/void*等の不透明ポインタは IronHSP では intptr 指定が可能。