IProviderSyncServices::DeserializeSyncKnowledge
ISyncKnowledge オブジェクトを作成し、シリアル化されたデータを使用してこれを初期化します。
構文
HRESULT DeserializeSyncKnowledge(
const BYTE *pbKnowledge,
DWORD cbKnowledge,
IReplicaKeyMap *pReplicaKeyMap,
ISyncKnowledge **ppKnowledge);
パラメーター
pbKnowledge
[in, size_is(cbKnowledge)] シリアル化されたナレッジ データです。cbKnowledge
[in] pbKnowledge のバイト数です。pReplicaKeyMap
[in, unique] 新しく作成されたナレッジ オブジェクトの初期化に使用されるレプリカ キー マップです。この値が NULL の場合は、pbKnowledge にシリアル化されたレプリカ キー マップが含まれている必要があります。この値が NULL 以外の場合は、pbKnowledge にシリアル化されたレプリカ キー マップを含めないでください。ppKnowledge
[out] 新しく作成されたナレッジ オブジェクトを返します。
戻り値
S_OK
E_OUTOFMEMORY
E_POINTER
SYNC_E_INVALID_OPERATION (このオブジェクトが初期化されていない場合)
SYNC_E_DESERIALIZATION (シリアル化されたデータが無効な場合)
SYNC_E_ID_FORMAT_MISMATCH (pbKnowledge に含まれた ID 形式スキーマが、このオブジェクトの初期化に使用する ID 形式スキーマと一致しない場合)
説明
ナレッジ オブジェクトのシリアル化を解除するには、適切な IReplicaKeyMap インターフェイス オブジェクトが必要です。IReplicaKeyMap オブジェクトがナレッジ データと共にシリアル化されていた場合、このオブジェクトはナレッジ データと共にシリアル化が解除されるため、pReplicaKeyMap に NULL を指定する必要があります。IReplicaKeyMap オブジェクトがナレッジ データと共にシリアル化されていない場合は、他の方法でこのオブジェクトを作成して、pReplicaKeyMap に指定する必要があります。