ISynchronousNotifyingChangeApplierTarget::SaveChangeWithChangeUnits

変更単位の変更を含む項目変更を、項目ストアに保存します。

HRESULT SaveChangeWithChangeUnits(
  ISyncChange * pChange,
  ISaveChangeWithChangeUnitsContext * pSaveContext);

パラメーター

  • pChange
    [in] 適用する項目変更です。
  • pSaveContext
    [in] 適用される変更に関する情報です。

戻り値

  • S_OK

  • プロバイダーが決定したエラー コード

実装に関するメモ

pSaveContext に格納されているアクションが SSA_CREATE の場合は、すべての変更単位を正常に保存するか、項目変更全体を破棄する必要があります。変更単位の一部が保存されても、残りの変更単位の保存に失敗すると、データが破損する可能性があります。

ISaveChangeWithChangeUnitsContext::SetRecoverableErrorOnChangeUnit が呼び出され、pSaveContext が SSA_CREATE である場合は、SetRecoverableErrorOnChangeUnit によって SYNC_E_ON_CREATE_MUST_FAIL_ENTIRE_ITEM が返されます。

このメソッドの実行中に同期が取り消されると、プロバイダーによって変更単位の一部が適用されている場合、プロバイダーは、適用されていないすべての変更単位に対して ISaveChangeWithChangeUnitsContext::SetRecoverableErrorOnChangeUnit を呼び出す必要があります。

参照

リファレンス

ISynchronousNotifyingChangeApplierTarget インターフェイス