Compartilhar via


IFileSyncProvider::Initialize

Inicializa uma nova instância de IFileSyncProvider com base na pasta a ser sincronizada e em outras configurações.

HRESULT Initialize(
  REFGUID guidReplicaId,
  LPCWSTR pcszReplicaRootPath,
  LPCWSTR pcszMetadataFilePath,
  LPCWSTR pcszTempDirectoryPath,
  DWORD dwSyncFlags,
  IFileSyncScopeFilter *pScopeFilter,
  IFileSyncProviderCallback *pCallback,
  LPCWSTR pcszPathToSaveConflictLoserFiles);

Parâmetros

  • guidReplicaId
    [in] A ID da réplica.
  • pcszReplicaRootPath
    [in, string] O caminho absoluto para o repositório do arquivo local desse provedor. Essa é a pasta que contém os arquivos e subpastas que serão sincronizados.
  • pcszMetadataFilePath
    [in, string] O caminho absoluto e o nome do arquivo de armazenamento de metadados. O diretório deve ser criado antes de chamar este construtor. O aplicativo deve garantir que esse diretório esteja protegido com o nível de permissões de segurança apropriado para evitar a divulgação de informações.
  • pcszTempDirectoryPath
    [in, unique, string] O caminho absoluto onde os arquivos temporários serão armazenados. O diretório deve ser criado antes de chamar este construtor. O aplicativo deve garantir que este diretório está protegido com o nível de permissões de segurança apropriado para evitar a divulgação de informações. Se pcszTempDirectoryPath for NULL ou uma cadeia vazia, os arquivos temporários serão armazenados no local especificado por pcszReplicaRootPath.
  • dwSyncFlags
    [in] Sinalizadores que determinam o comportamento do provedor durante a sincronização. Este valor deve ser uma combinação de valores da enumeração FILESYNC_INIT_FLAGS.
  • pScopeFilter
    [in, unique] Um filtro de escopo estático que especifica quais arquivos ou diretórios no repositório do arquivo local estão incluídos no escopo. Pode ser NULL.
  • pCallback
    [in, unique] Uma interface de retorno que recebe notificações de andamento e status do provedor. Pode ser NULL.
  • pcszPathToSaveConflictLoserFiles
    [in, string] O caminho absoluto onde os arquivos perdedores de conflito serão armazenados. O diretório deve ser criado antes de chamar este construtor. Para ajudar a evitar a divulgação de informações, o aplicativo deve assegurar que esse diretório esteja protegido com o nível de permissões de segurança apropriado. Pode ser NULL.

Valor de retorno

  • S_OK.

  • SYNC_E_FSP_INVALIDOPERATION se Initialize já tiver sido chamado.

  • E_INVALIDARG quando alguns dos caminhos especificado forem arquivos relativos, não existirem ou quando o caminho dos metadados não incluir o nome do arquivo de metadados.

  • SYNC_E_METADATA_REPLICA_IN_USE quando uma instância de IReplicaMetadata que representa a ID da réplica especificada por guidReplicaId e o armazenamento de metadados especificado por pcszMetadataFilePath já existirem em outro processo.

Comentários

As informações que são passadas aos construtores são usadas para inicialização e são definidas permanentemente para a instância do provedor. Isso significa que, quando qualquer alteração é feita nessas configurações, uma nova instância do provedor deve ser criada. Por exemplo, para alterar o filtro de escopo em uso pela sincronização, um novo provedor de sincronização de arquivo deve ser criado e inicializado com o filtro novo.

O provedor de sincronização de arquivos usa o serviço de armazenamento de metadados para armazenar todos os metadados da sincronização em um banco de dados leve. O banco de dados de metadados é um único arquivo. Esse arquivo pode ser armazenado com os arquivos e pastas que serão sincronizados ou em outro local especificado em Initialize.

Para garantir a segurança apropriada, diretórios como o diretório de arquivos temporários devem ser protegidos com o nível apropriado de permissões de segurança para evitar a divulgação de informações.

Consulte também

Referência

Interface IFileSyncProvider
Enumeração FILESYNC_INIT_FLAGS