Condividi tramite


CF_CALLBACK_INFO struttura (cfapi.h)

Contiene informazioni di callback comuni, ad esempio il tipo di callback, il processo utente che attiva il callback e le informazioni di base sul file in cui viene richiesto il callback.

Sintassi

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;

Members

StructSize

Dimensione di CF_CALLBACK_INFO.

ConnectionKey

Handle opaco creato da CfConnectSyncRoot per una radice di sincronizzazione gestita dal provider di sincronizzazione. ConnectionKey viene restituito come praticità in modo che il provider di sincronizzazione non debba tenere traccia manualmente.

CallbackContext

Punta a un BLOB opaco fornito dal provider di sincronizzazione al momento della connessione radice di sincronizzazione. CallbackContext viene restituito come praticità, pertanto il provider di sincronizzazione non deve tenere traccia manualmente.

VolumeGuidName

Nome GUID del volume in cui risiede il file/directory segnaposto da usare. È nel formato "\?\Volume{GUID}".

VolumeDosName

Lettera di unità DOS del volume sotto forma di "X:" dove X è la lettera di unità.

VolumeSerialNumber

Numero di serie del volume.

SyncRootFileId

Un file system a 64 bit gestito, ID univoco a livello di volume della radice di sincronizzazione in cui risiede il file segnaposto o la directory da gestire.

SyncRootIdentity

Punta al BLOB opaco fornito dal provider di sincronizzazione al momento della registrazione radice di sincronizzazione.

SyncRootIdentityLength

Lunghezza, in byte, dell'elemento SyncRootIdentity.

FileId

Un file system a 64 bit gestito, id univoco a livello di volume del file segnaposto o della directory da gestire.

FileSize

Dimensioni logiche del file segnaposto da usare. È sempre 0 se l'oggetto del callback è una directory.

FileIdentity

Punta al BLOB opaco fornito dal provider di sincronizzazione in fase di creazione/conversione/aggiornamento segnaposto.

FileIdentityLength

Lunghezza, in byte, di FileIdentity.

NormalizedPath

Percorso assoluto del file segnaposto o della directory da eseguire nel volume identificato da VolumeGuidName/VolumeDosName. Inizia dalla directory radice del volume. Per altre informazioni, vedere la sezione Osservazioni .

TransferKey

Handle opaco per il file segnaposto/directory da gestire. Il provider di sincronizzazione deve passare nuovamente alla chiamata CfExecute per eseguire l'operazione desiderata nel file/directory.

PriorityHint

Scala numerica assegnata al provider di sincronizzazione per descrivere la priorità relativa di un recupero rispetto a un'altra recuperata, per offrire l'esperienza più reattiva all'utente. I valori vanno da 0 (priorità più bassa possibile) a 15 (priorità più alta possibile), ma in caso contrario i valori non hanno alcun significato specifico. Il filtro può modificare la modalità di scelta degli hint di priorità in base alle condizioni. Il provider di sincronizzazione è gratuito per usare l'hint, ma sceglie.

CorrelationVector

Vettore di correlazione facoltativo.

ProcessInfo

Punta a una struttura CF_PROCESS_INFO che contiene le informazioni sul processo utente che attiva questo callback. È presente solo se il provider di sincronizzazione specifica CF_CONNECT_FLAG_REQUIRE_PROCESS_INFO all'ora di connessione radice di sincronizzazione.

RequestKey

ID opaco che identifica in modo univoco un'operazione di file cloud in un determinato file cloud, come indicato da TransferKey. I provider di sincronizzazione non devono interpretare questo campo. L'unico requisito per un provider di sincronizzazione consiste nel trasferirlo come in CF_OPERATION_INFO.

Commenti

Un nome file viene considerato normalizzato se tutte le operazioni seguenti sono vere:

  • Contiene il percorso completo della directory per il file, incluso il nome del volume, a meno che l'utente non abbia aperto il file in base all'ID file, ma non abbia privilegi di attraversamento per l'intero percorso. Per altre informazioni, vedere FltGetFileNameInformation.
  • Il nome del volume è il nome dell'oggetto dispositivo non persistente del volume, ad esempio "\Device\HarddiskVolume1".
  • Tutti i nomi brevi vengono espansi nei nomi lunghi equivalenti.
  • Le stringhe ":$DATA" o "::$DATA" finali vengono rimosse dal nome del flusso.
  • Tutti i punti di montaggio vengono risolti.

Requisiti

   
Client minimo supportato Windows 10 versione 1709 [solo app desktop]
Server minimo supportato Windows Server 2016 [solo app desktop]
Intestazione cfapi.h

Vedi anche

CfConnectSyncRoot

CfExecute

CF_PROCESS_INFO

CF_OPERATION_INFO

FltGetFileNameInformation