estrutura CF_CALLBACK_INFO (cfapi.h)

Contém informações comuns de retorno de chamada, como o tipo de retorno de chamada, o processo do usuário que dispara o retorno de chamada e as informações básicas sobre o arquivo no qual o retorno de chamada é solicitado.

Sintaxe

typedef struct CF_CALLBACK_INFO {
  DWORD               StructSize;
  CF_CONNECTION_KEY   ConnectionKey;
  LPVOID              CallbackContext;
  PCWSTR              VolumeGuidName;
  PCWSTR              VolumeDosName;
  DWORD               VolumeSerialNumber;
  LARGE_INTEGER       SyncRootFileId;
  LPCVOID             SyncRootIdentity;
  DWORD               SyncRootIdentityLength;
  LARGE_INTEGER       FileId;
  LARGE_INTEGER       FileSize;
  LPCVOID             FileIdentity;
  DWORD               FileIdentityLength;
  PCWSTR              NormalizedPath;
  CF_TRANSFER_KEY     TransferKey;
  UCHAR               PriorityHint;
  PCORRELATION_VECTOR CorrelationVector;
  CF_PROCESS_INFO     *ProcessInfo;
  CF_REQUEST_KEY      RequestKey;
} CF_CALLBACK_INFO;

Membros

StructSize

O tamanho de CF_CALLBACK_INFO.

ConnectionKey

Um identificador opaco criado por CfConnectSyncRoot para uma raiz de sincronização gerenciada pelo provedor de sincronização. ConnectionKey é retornado como uma conveniência para que o provedor de sincronização não precise rastreá-lo manualmente.

CallbackContext

Aponta para um blob opaco que o provedor de sincronização fornece no momento da conexão raiz de sincronização. CallbackContext é retornado como uma conveniência para que o provedor de sincronização não precise rastreá-lo manualmente.

VolumeGuidName

Nome guid do volume no qual reside o arquivo/diretório de espaço reservado a ser atendido. Ele está no formato: "\?\Volume{GUID}".

VolumeDosName

LETRA DA da unidade do volume na forma de "X:", em que X é a letra da unidade.

VolumeSerialNumber

O número de série do volume.

SyncRootFileId

Um sistema de arquivos de 64 bits mantido, ID exclusiva em todo o volume da raiz de sincronização na qual reside o arquivo de espaço reservado ou diretório a ser atendido.

SyncRootIdentity

Aponta para o blob opaco fornecido pelo provedor de sincronização no momento do registro raiz da sincronização.

SyncRootIdentityLength

O comprimento, em bytes, da SyncRootIdentity.

FileId

Um sistema de arquivos de 64 bits mantido, ID exclusiva em todo o volume do arquivo de espaço reservado ou diretório a ser atendido.

FileSize

O tamanho lógico do arquivo de espaço reservado a ser atendido. É sempre 0 se o assunto do retorno de chamada for um diretório.

FileIdentity

Aponta para o blob opaco que o provedor de sincronização fornece no tempo de criação/conversão/atualização do espaço reservado.

FileIdentityLength

O comprimento, em bytes, de FileIdentity.

NormalizedPath

O caminho absoluto do arquivo de espaço reservado ou diretório a ser atendido no volume identificado por VolumeGuidName/VolumeDosName. Ele começa no diretório raiz do volume. Consulte a seção Comentários para obter mais detalhes.

TransferKey

Um identificador opaco para o arquivo/diretório de espaço reservado a ser atendido. O provedor de sincronização deve passá-lo de volta para a chamada CfExecute para executar a operação desejada no arquivo/diretório.

PriorityHint

Uma escala numérica fornecida ao provedor de sincronização para descrever a prioridade relativa de uma busca em comparação com outra busca, a fim de fornecer a experiência mais responsiva ao usuário. Os valores variam de 0 (prioridade mais baixa possível) a 15 (prioridade mais alta possível), mas, caso contrário, os valores não têm nenhum significado específico. O filtro pode ajustar como ele escolhe dicas de prioridade de acordo com as condições. O provedor de sincronização é livre para usar a dica como quiser.

CorrelationVector

Um vetor de correlação opcional.

ProcessInfo

Aponta para uma estrutura CF_PROCESS_INFO que contém as informações sobre o processo do usuário que dispara esse retorno de chamada. Ele estará presente somente se o provedor de sincronização especificar CF_CONNECT_FLAG_REQUIRE_PROCESS_INFO no momento da conexão raiz da sincronização.

RequestKey

Uma ID opaca que identifica exclusivamente uma operação de arquivo de nuvem em um arquivo de nuvem específico, conforme indicado por TransferKey. Os provedores de sincronização não precisam interpretar esse campo. O único requisito em um provedor de sincronização é transferi-lo como está para CF_OPERATION_INFO.

Comentários

Um nome de arquivo será considerado normalizado se todos os itens a seguir forem verdadeiros:

  • Ele contém o caminho completo do diretório para o arquivo, incluindo o nome do volume, a menos que o usuário tenha aberto o arquivo por ID de arquivo, mas não tenha privilégio de passagem para todo o caminho. (Para obter mais informações, consulte FltGetFileNameInformation.)
  • O nome do volume é o nome do objeto de dispositivo não persistente do volume (por exemplo, "\Device\HarddiskVolume1").
  • Todos os nomes curtos são expandidos para os nomes longos equivalentes.
  • Todas as cadeias de caracteres ":$DATA" ou "::$DATA" à direita são removidas do nome do fluxo.
  • Todos os pontos de montagem são resolvidos.

Requisitos

   
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]
Cabeçalho cfapi.h

Confira também

CfConnectSyncRoot

CfExecute

CF_PROCESS_INFO

CF_OPERATION_INFO

FltGetFileNameInformation