다음을 통해 공유


ISyncFilter::Serialize

파생 클래스에서 재정의되는 경우 필터를 바이트 배열로 직렬화합니다.

HRESULT Serialize(
  BYTE * pbSyncFilter,
  DWORD * pcbSyncFilter);

매개 변수

  • pbSyncFilter
    [in, out, unique, size_is(*pcbSyncFilter)] 필터 데이터를 받는 바이트 배열입니다.
  • pcbSyncFilter
    [in, out] pbSyncFilter의 바이트 수를 지정합니다. pbSyncFilter가 너무 작으면 pbSyncFilter에 필요한 바이트 수를 반환하고, 그렇지 않으면 데이터를 쓸 때 pbSyncFilter에 쓴 바이트 수를 반환합니다.

반환 값

  • S_OK

  • pbChangeBatch가 너무 작으면 HRESULT_FROM_WIN32(ERROR_MORE_DATA)입니다. 이 경우에는 필요한 바이트 수가 pcbChangeBatch에 저장됩니다.

  • 공급자 고유의 오류 코드입니다.

주의

Sync Framework에서는 이 메서드를 처음 호출할 때 pbSyncFilter에 NULL을 지정하고 pcbSyncFilter에 0을 지정합니다. 이 경우에는 메서드 구현을 통해 pcbSyncFilter에서 정확한 크기의 항목 ID 및 오류 코드 HRESULT_FROM_WIN32(ERROR_MORE_DATA)가 반환되어야 합니다.

이 메서드가 구현되면 개발자도 ISyncFilterDeserializer::DeserializeSyncFilter를 구현하여 직렬화된 데이터를 역직렬화해야 합니다.

필터를 직렬화할 필요가 없으면 이 메서드에서 E_NOTIMPL을 반환할 수 있습니다.

참고 항목

참조

ISyncFilter 인터페이스