Funzione CfExecute (cfapi.h)
Punto di ingresso principale per tutte le operazioni segnaposto basate su chiave di connessione. È destinato a essere usato da un provider di sincronizzazione per rispondere a vari callback dalla piattaforma.
Sintassi
HRESULT CfExecute(
[in] const CF_OPERATION_INFO *OpInfo,
[in, out] CF_OPERATION_PARAMETERS *OpParams
);
Parametri
[in] OpInfo
Informazioni su un'operazione su un segnaposto.
[in, out] OpParams
Parametri di un'operazione su un segnaposto.
Valore restituito
Se questa funzione ha esito positivo, restituisce S_OK
. In caso contrario, restituisce un codice di errore HRESULT .
Commenti
Una chiamata valida a CfExecute reimposta i timer di tutte le richieste di callback in sospeso appartenenti allo stesso processo del provider di sincronizzazione.
CfExecute accetta due argomenti di dimensioni variabili, ad esempio CF_OPERATION_INFO e CF_OPERATION_PARAMETERS, con un'identificazione del tipo di operazione e l'altro che fornisce parametri di operazione dettagliati. Entrambi gli argomenti iniziano con un campo StructSize all'inizio delle strutture corrispondenti. I chiamanti di CfExecute sono responsabili della contabilità accurata delle dimensioni della struttura.
La piattaforma fornisce ConnectionKey, TransferKey e CorrelationVector a tutte le funzioni di callback registrate con CfConnectSyncRoot. Inoltre, i provider di sincronizzazione possono ottenere TransferKey usando CfGetTransferKey e CorrelationVector usando CfGetCorrelationVector.
Facoltativamente, i provider di sincronizzazione possono fornire un BLOB di stato di sincronizzazione alla piattaforma. Se un puntatore non Null è impostato nel campo SyncStatus in CF_OPERATION_INFO, il relativo contenuto verrà mantenuto nel file fino all'ultimo handle su di esso rimosso. La piattaforma esegue una query su tutte le operazioni non riuscite su un segnaposto file cloud. Se disponibile, la piattaforma userà le informazioni fornite per costruire un messaggio più significativo e utilizzabile per l'utente.
Se un puntatore Null è impostato nel campo SyncStatus in CF_OPERATION_INFO, la piattaforma cancella lo stato di sincronizzazione impostato in precedenza (se presente).
Tutte le operazioni possono essere eseguite in un contesto di thread arbitrario nel processo del provider di sincronizzazione.
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 |