Função CfExecute (cfapi.h)

O ponto de entrada main para todas as operações de espaço reservado baseadas em chave de conexão. Ele deve ser usado por um provedor de sincronização para responder a vários retornos de chamada da plataforma.

Sintaxe

HRESULT CfExecute(
  [in]      const CF_OPERATION_INFO *OpInfo,
  [in, out] CF_OPERATION_PARAMETERS *OpParams
);

Parâmetros

[in] OpInfo

Informações sobre uma operação em um espaço reservado.

[in, out] OpParams

Parâmetros de uma operação em um espaço reservado.

Retornar valor

Se essa função for bem-sucedida, ela retornará S_OK. Caso contrário, ele retornará um código de erro HRESULT.

Comentários

Uma chamada válida para CfExecute redefinirá os temporizadores de todas as solicitações de retorno de chamada pendentes que pertencem ao mesmo processo de provedor de sincronização.

CfExecute usa dois argumentos de tamanho variável, ou seja, CF_OPERATION_INFO e CF_OPERATION_PARAMETERS, com um identificando o tipo de operação e o outro fornecendo parâmetros de operação detalhados. Ambos os argumentos começam com um campo StructSize no início das estruturas correspondentes. Os chamadores de CfExecute são responsáveis pela contabilidade precisa do tamanho da estrutura.

A plataforma fornece ConnectionKey, TransferKey e CorrelationVector para todas as funções de retorno de chamada registradas com CfConnectSyncRoot. Além disso, os provedores de sincronização podem obter TransferKey usando CfGetTransferKey e CorrelationVector usando CfGetCorrelationVector.

Opcionalmente, os provedores de sincronização podem fornecer uma sincronização status blob para a plataforma. Se um ponteiro não nulo for definido no campo SyncStatus em CF_OPERATION_INFO, seu conteúdo será mantido no arquivo até que o último identificador nele seja removido. A plataforma consultará essas informações sobre quaisquer operações com falha em um espaço reservado de arquivo de nuvem. Se houver uma disponível, a plataforma usará as informações fornecidas para construir uma mensagem mais significativa e acionável para o usuário.

Se um ponteiro nulo for definido no campo SyncStatus no CF_OPERATION_INFO, a plataforma limpará o status de sincronização definido anteriormente (se houver).

Todas as operações podem ser executadas em um contexto de thread arbitrário no processo do provedor de sincronização.

Requisitos

Requisito Valor
Cliente mínimo com suporte Windows 10, versão 1709 [somente aplicativos da área de trabalho]
Servidor mínimo com suporte Windows Server 2016 [somente aplicativos da área de trabalho]
Plataforma de Destino Windows
Cabeçalho cfapi.h
Biblioteca CldApi.lib
DLL CldApi.dll

Confira também

CfConnectSyncRoot

CfGetCorrelationVector

CF_OPERATION_INFO

CF_OPERATION_PARAMETERS