IReplStore::RemoveDuplicates

This method finds and removes duplicated objects from the store.

At a Glance

Header file: Cesync.h
Windows CE versions: 2.0 and later

Syntax

HRESULT RemoveDuplicates( LPSTR lpszObjType, UINT uFlags );

Parameters

lpszObjType

Long pointer to the null-terminated string that contains the name of the object type for which this operation is intended. This parameter is NULL if all object types should be checked.

uFlags

Reserved; set to zero.

Return Values

Value Description
NOERROR The operation completed successfully and there is no need to restart replication to pick up the deletions.
RERR_RESTART The operation completed successfully and replication should be restarted to pick up the deletions.
E_NOTIMPL The ActiveSync service provider does not support this operation.

Remarks

Occasionally, the ActiveSync service manager might need to prompt an ActiveSync service provider to scan all objects in the store to check for duplicates and give the user a chance to remove them. The ActiveSync service provider should return E_NOTIMPL if it chooses not to implement this functionality. Otherwise, the ActiveSync service provider should perform the check and remove and return NOERROR or RERR_RESTART if successful. In this case, replication does not call the IReplStore::RemoveDuplicates method again until necessary. It should return all other error values if, for some reason, operation cannot be performed at that time. In this case, replication calls RemoveDuplicates again at the end of the next synchronization.

See Also

IReplStore