ISyncProviderRegistration::EnumerateSyncProviders method (syncregistration.h)

Returns an IEnumSyncProviderInfos enumeration interface that enumerates all registered ISyncProviderInfo objects for the specified criteria.

Syntax

HRESULT EnumerateSyncProviders(
  [in]  LPCGUID                pguidContentType,
  [in]  DWORD                  dwStateFlagsToFilterMask,
  [in]  DWORD                  dwStateFlagsToFilter,
  [in]  REFCLSID               refProviderClsId,
  [in]  DWORD                  dwSupportedArchitecture,
  [out] IEnumSyncProviderInfos **ppEnumSyncProviderInfos
);

Parameters

[in] pguidContentType

The LPCGUID of the specified content type. If this parameter is NULL, all content types will be enumerated.

[in] dwStateFlagsToFilterMask

A synchronization provider state flag that can be used to mask (preserve or remove) the existing state. If this parameter is set to zero, all synchronization provider states will be enumerated. See the dwStateFlagsToFilter parameter description for a list of flags.

[in] dwStateFlagsToFilter

One of the following flags that represent the synchronization provider state.

  • SYNC_PROVIDER_STATE_ENABLED ((DWORD)0x00000001)The provider is enabled and available for synchronization.
  • SYNC_PROVIDER_STATE_DIRTY ((DWORD)0x00000002)The active provider has been updated and has new data to synchronize.
If this parameter is set to zero, all synchronization provider states will be enumerated.

[in] refProviderClsId

The REFCLSID of a particular provider. If this parameter is set to CLSID_NULL, all providers will be enumerated.

[in] dwSupportedArchitecture

One, or a combination of, the following flags that represent the architectures of the providers to be enumerated. If SYNC_32_BIT_SUPPORTED is specified, all providers that support 32 bits or 32 and 64 bits will be enumerated. If SYNC_32_BIT_SUPPORTED | SYNC_64_BIT_SUPPORTED is specified, only those providers that support both 32 bits and 64 bits will be enumerated.

  • SYNC_32_BIT_SUPPORTED ((DWORD)0x00000001)
  • SYNC_64_BIT_SUPPORTED ((DWORD)0x00000002)
If this parameter is set to zero, synchronization providers for all architectures will be enumerated.

[out] ppEnumSyncProviderInfos

The IEnumSyncProviderInfos enumeration interface that will enumerate all ISyncProviderInfo objects that match the specified criteria.

Return value

The possible return codes include, but are not limited to, the values shown in the following table.

Return code Description
S_OK
The method succeeded.
E_POINTER
Invalid pointer.
E_OUTOFMEMORY
There was not enough memory available to return the enumeration interface.

Requirements

Requirement Value
Minimum supported client Windows 7 [desktop apps only]
Minimum supported server Windows Server 2008 R2 [desktop apps only]
Target Platform Windows
Header syncregistration.h

See also

IEnumSyncProviderInfos Interface

ISyncProviderRegistration Interface