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 |