Funzione CfGetTransferKey (cfapi.h)

CfGetTransferKey restituisce TransferKey, necessario per avviare un trasferimento di dati in un segnaposto usando l'API CfExecute .

Sintassi

HRESULT CfGetTransferKey(
  [in]  HANDLE          FileHandle,
  [out] CF_TRANSFER_KEY *TransferKey
);

Parametri

[in] FileHandle

Handle di file del segnaposto.

[out] TransferKey

Handle opaco per il segnaposto da gestire.

Valore restituito

Se questa funzione ha esito positivo, restituisce S_OK. In caso contrario, restituisce un codice di errore HRESULT .

Commenti

Questa API è disponibile per i provider di sincronizzazione che potrebbero voler avviare in modo proattivo un trasferimento dei dati in un segnaposto, in alternativa alla chiamata di CfHydratePlaceholder. CfGetTransferKey restituisce lo stesso TransferKey restituito da un callback dei dati di recupero. Il provider di sincronizzazione può quindi passare TransferKey nelle chiamate successive all'API CfExecute . In questo modo, il trasferimento dei dati viene gestito dal provider di sincronizzazione anziché dal filtro.

Un provider di sincronizzazione deve avere READ_DATA o WRITE_DAC l'accesso al file la cui chiave di trasferimento deve essere ottenuta o CfGetTransferKey avrà esito negativo con HRESULT(ERROR_CLOUD_FILE_ACCESS_DENIED).

TransferKey è valido fino a quando fileHandle usato per ottenerlo rimane aperto. Il provider di sincronizzazione deve passare TransferKey a CfExecute per eseguire l'operazione desiderata nel file o nella cartella segnaposto. Quando un oggetto TransferKey non viene più usato, deve essere rilasciato tramite CfReleaseTransferKey.

Requisiti

Requisito Valore
Client minimo supportato Windows 10 versione 1709 [solo app desktop]
Server minimo supportato Windows Server 2016 [solo app desktop]
Piattaforma di destinazione Windows
Intestazione cfapi.h
Libreria CldApi.lib
DLL CldApi.dll

Vedi anche

CfHydratePlaceholder

CfExecute

CfReleaseTransferKey