CF_OPERATION_PARAMETERS struttura (cfapi.h)

Parametri dettagliati di un'operazione in un file segnaposto o in una cartella. I dati forniti in questa struttura sono specifici della CF_OPERATION_TYPE dell'operazione.

Sintassi

typedef struct CF_OPERATION_PARAMETERS {
  ULONG ParamSize;
  union {
    struct {
      CF_OPERATION_TRANSFER_DATA_FLAGS Flags;
      NTSTATUS                         CompletionStatus;
      LPCVOID                          Buffer;
      LARGE_INTEGER                    Offset;
      LARGE_INTEGER                    Length;
    } TransferData;
    struct {
      CF_OPERATION_RETRIEVE_DATA_FLAGS Flags;
      LPVOID                           Buffer;
      LARGE_INTEGER                    Offset;
      LARGE_INTEGER                    Length;
      LARGE_INTEGER                    ReturnedLength;
    } RetrieveData;
    struct {
      CF_OPERATION_ACK_DATA_FLAGS Flags;
      NTSTATUS                    CompletionStatus;
      LARGE_INTEGER               Offset;
      LARGE_INTEGER               Length;
    } AckData;
    struct {
      CF_OPERATION_RESTART_HYDRATION_FLAGS Flags;
      const CF_FS_METADATA                 *FsMetadata;
      LPCVOID                              FileIdentity;
      DWORD                                FileIdentityLength;
    } RestartHydration;
    struct {
      CF_OPERATION_TRANSFER_PLACEHOLDERS_FLAGS Flags;
      NTSTATUS                                 CompletionStatus;
      LARGE_INTEGER                            PlaceholderTotalCount;
      CF_PLACEHOLDER_CREATE_INFO               *PlaceholderArray;
      DWORD                                    PlaceholderCount;
      DWORD                                    EntriesProcessed;
    } TransferPlaceholders;
    struct {
      CF_OPERATION_ACK_DEHYDRATE_FLAGS Flags;
      NTSTATUS                         CompletionStatus;
      LPCVOID                          FileIdentity;
      DWORD                            FileIdentityLength;
    } AckDehydrate;
    struct {
      CF_OPERATION_ACK_RENAME_FLAGS Flags;
      NTSTATUS                      CompletionStatus;
    } AckRename;
    struct {
      CF_OPERATION_ACK_DELETE_FLAGS Flags;
      NTSTATUS                      CompletionStatus;
    } AckDelete;
  } DUMMYUNIONNAME;
} CF_OPERATION_PARAMETERS;

Members

ParamSize

DUMMYUNIONNAME

DUMMYUNIONNAME.TransferData

Un provider di sincronizzazione esegue TRANSFER_DATA per idratare un file segnaposto. Questa operazione può essere eseguita come risposta a un callback FETCH_DATA , un callback VALIDATE_DATA o come parte di un impegno di idratazione in background preemptive all'esterno di qualsiasi contesto di callback.

Questa API è applicabile solo per i provider di sincronizzazione che supportano un criterio di idratazione minore di ALWAYS_FULL. In caso contrario, l'operazione avrà esito negativo con ERROR_CLOUD_FILE_INVALID_REQUEST.

Il provider di sincronizzazione deve avere WRITE_DATA o WRITE_DAC accesso al file in cui eseguire l'operazione di TRANSFER_DATA . In caso contrario, l'operazione avrà esito negativo con ERROR_CLOUD_FILE_ACCESS_DENIED.

Per eseguire questa operazione:

  • OpInfo.Type deve essere impostato su CF_OPERATION_TYPE_TRANSFER_DATA.
  • OpParams.ParamSize deve essere impostato sulle dimensioni esatte di OpParams.TransferData e sull'offset di OpParams.TransferData.
  • OpParams.TransferData.Flags deve essere impostato su CF_OPERATION_TRANSFER_DATA_FLAG_NONE.
  • OpParams.TransferData.CompletionStatus deve essere impostato su STATUS_SUCCESS se il provider di sincronizzazione vuole trasferire i dati al file segnaposto. Se il provider di sincronizzazione non riesce a elaborare la richiesta di idratazione per qualsiasi motivo e non vuole riavviare l'idratazione, deve impostare uno stato STATUS_CLOUD_FILE_* in CompletionStatus. Qualsiasi codice di stato restituito all'esterno dell'intervallo STATUS_CLOUD_FILE_* ad eccezione di STATUS_SUCCESS verrà convertito in STATUS_CLOUD_FILE_UNSUCCESSFUL dalla piattaforma.
  • OpParams.TransferData.Buffer deve puntare a un buffer in modalità utente valido se OpParams.TransferData.CompletionStatus è STATUS_SUCCESS e deve essere di almeno OpParams.TransferData.Length byte; in caso contrario, il campo del buffer viene ignorato.
  • OpParams.TransferData.Offset e OpParams.TransferData.Length descrivono un intervallo nel segnaposto a cui il provider di sincronizzazione sta trasferendo i dati. Non è necessario che il provider di sincronizzazione restituisca tutti i dati richiesti in uno scatto. È anche OK per un provider di sincronizzazione per restituire più dati rispetto alle richieste. Ad esempio, il provider di sincronizzazione può decidere di sovra leggere, per prestazioni o altri motivi. Il provider di sincronizzazione può anche eseguire più operazioni di TRANSFER_DATA ripetutamente come risposta alla stessa FETCH_DATA callback. L'unico requisito è che sia l'offset che la lunghezza sono allineate a 4 KB a meno che l'intervallo descritto termina sulla dimensione logica del file (EoF), in tal caso, la lunghezza non è necessaria per essere allineata a 4 KB fino a quando l'intervallo risultante termina su o oltre le dimensioni del file logico.

Al termine dell'operazione:

  • Se il provider di sincronizzazione non specifica VALIDATION_REQUIRED al momento della registrazione radice di sincronizzazione.

Nel caso di trasferimento riuscito, qualsiasi utente I/O in sospeso richiede n il file segnaposto che ha ricevuto tutti i byte necessari a seguito del trasferimento verrà completato; in caso contrario, le richieste di I/O utente incompleto verranno aggiornate per riflettere lo stato più recente di idratazione. In un caso di trasferimento non riuscito, eventuali richieste di I/O utente in sospeso nel file segnaposto che si sovrappongono all'intervallo come descritto dall'offset e la lunghezza non saranno riusciti con OpParams.TransferData.CompletionStatus.

Se il provider di sincronizzazione specifica VALIDATION_REQUIRED al momento della registrazione radice di sincronizzazione, non verrà eseguita alcuna elaborazione dalla piattaforma fino a quando i dati nell'intervallo non vengono riconosciuti positivamente dal provider di sincronizzazione tramite un'operazione di ACK_DATA .

DUMMYUNIONNAME.TransferData.Flags

Flag per il trasferimento dei dati. Questa opzione deve essere impostata su CF_OPERATION_TRANSFER_DATA_FLAG_NONE. Per altre informazioni, vedere CF_OPERATION_TRANSFER_DATA_FLAGS .

DUMMYUNIONNAME.TransferData.CompletionStatus

Stato per il trasferimento dei dati. Questa opzione deve essere impostata su STATUS_SUCCESS se il provider di sincronizzazione vuole trasferire i dati al file segnaposto. Se il provider di sincronizzazione non riesce a elaborare la richiesta di idratazione per qualsiasi motivo e non vuole riavviare l'idratazione, deve impostare uno stato STATUS_CLOUD_FILE_* in CompletionStatus. Qualsiasi codice di stato restituito all'esterno dell'intervallo STATUS_CLOUD_FILE_* ad eccezione di STATUS_SUCCESS verrà convertito in STATUS_CLOUD_FILE_UNSUCCESSFUL dalla piattaforma.

DUMMYUNIONNAME.TransferData.Buffer

Buffer della modalità utente valido. Questo deve puntare a un buffer in modalità utente valido se CompletionStatus è STATUS_SUCCESS e deve essere di almeno byte di lunghezza . In caso contrario, il campo del buffer viene ignorato.

DUMMYUNIONNAME.TransferData.Offset

Offset utilizzato con lunghezza per descrivere un intervallo nel segnaposto a cui vengono trasferiti i dati. Descrive un intervallo nel segnaposto a cui il provider di sincronizzazione sta trasferendo i dati. Non è necessario che il provider di sincronizzazione restituisca tutti i dati richiesti in uno scatto. È anche OK per un provider di sincronizzazione per restituire più dati rispetto alle richieste. Ad esempio, il provider di sincronizzazione può decidere di sovra leggere, per prestazioni o altri motivi. Il provider di sincronizzazione può anche eseguire più operazioni di TRANSFER_DATA ripetutamente come risposta alla stessa FETCH_DATA callback. L'offset deve essere allineato a 4 KB.

DUMMYUNIONNAME.TransferData.Length

Lunghezza in byte del buffer. La lunghezza deve essere allineata a 4 KB, a meno che l'intervallo descritto termina sulla dimensione del file logico (EoF), in questo caso , la lunghezza non deve essere allineata a 4 KB finché l'intervallo risultante termina con o oltre le dimensioni del file logico. Anche se l'oggetto CompletionStatus non è STATUS_SUCCESS, questo campo deve essere impostato su un valore valido.

DUMMYUNIONNAME.RetrieveData

Un provider di sincronizzazione esegue un'operazione di RETRIEVE_DATA come parte dell'idratazione segnaposto per convalidare l'integrità dei dati trasferiti in precedenza al segnaposto. Questa operazione può essere eseguita come risposta a un callback FETCH_DATA , un callback VALIDATE_DATA o come parte di un impegno di idratazione in background preemptive all'esterno di qualsiasi contesto di callback.

Questa API è applicabile solo per i provider di sincronizzazione che supportano un criterio di idratazione minore di ALWAYS_FULL. In caso contrario, l'operazione non sarà riuscita con STATUS_CLOUD_FILE_NOT_SUPPORTED.

Il provider di sincronizzazione è necessario per specificare il modificatore dei criteri di idratazione VALIDATE_REQUIRED al momento della registrazione radice di sincronizzazione per eseguire questa operazione. In caso contrario, l'operazione non sarà riuscita con STATUS_CLOUD_FILE_NOT_SUPPORTED.

Il provider di sincronizzazione deve avere READ_DATA o WRITE_DAC accesso al file in cui eseguire l'operazione di RETRIEVE_DATA . In caso contrario, l'operazione non sarà riuscita con STATUS_CLOUD_FILE_ACCESS_DENIED.

Per eseguire questa operazione:

  • OpInfo.Type deve essere impostato su CF_OPERATION_TYPE_RETRIEVE_DATA.
  • OpParams.ParamSize deve essere impostato sulla dimensione esatta di OpParams.RetrieveData e l'offset di OpParams.RetrieveData.
  • OpParams.RetrieveData.Flags deve essere impostato su CF_OPERATION_RETRIEVE_DATA_FLAG_NONE.
  • OpParams.RetrieveData.Buffer deve puntare a un buffer in modalità utente valido e deve essere di almeno OpParams.RetrieveData.Length byte. Al termine dell'operazione, riceve i dati trasferiti in precedenza al segnaposto tramite TRANSFER_DATA.
  • OpParams.RetrieveData.Offset e OpParams.RetrieveData.Length descrivono un intervallo nel segnaposto da cui il provider di sincronizzazione recupera i dati. L'intervallo richiesto deve essere stato completamente idratato da un'operazione TRANSFER_DATA prima dell'operazione di RETRIEVE_DATA altrimenti l'operazione non sarà riuscita con STATUS_CLOUD_FILE_INVALID_REQUEST. Sia l'offset che la lunghezza sono allineate a 4 KB, a meno che l'intervallo descritto termina sulle dimensioni del file logico (EoF), in cui la lunghezza non deve essere allineata a 4 KB finché termina o oltre le dimensioni del file logico.
  • OpParams.RetrieveData.ReturnedLength riceve il numero effettivo di byte recuperati al termine dell'operazione.

DUMMYUNIONNAME.RetrieveData.Flags

Flag per il recupero dei dati. Questa operazione deve essere impostata su CF_OPERATION_RETRIEVE_DATA_FLAG_NONE. Per altre informazioni , vedere CF_OPERATION_RETRIEVE_DATA_FLAGS .

DUMMYUNIONNAME.RetrieveData.Buffer

Questo deve puntare a un buffer in modalità utente valido e deve essere di almeno byte di lunghezza . Al termine dell'operazione, riceve i dati trasferiti in precedenza al segnaposto tramite TRANSFER_DATA.

DUMMYUNIONNAME.RetrieveData.Offset

Offset usato con lunghezza per descrivere l'intervallo di dati recuperati da un segnaposto. Descrive un intervallo nel segnaposto da cui il provider di sincronizzazione recupera i dati. L'intervallo richiesto deve essere stato completamente idratato da un'operazione TRANSFER_DATA prima dell'operazione di RETRIEVE_DATA altrimenti l'operazione non sarà riuscita con STATUS_CLOUD_FILE_INVALID_REQUEST. L'offset deve essere allineato a 4 KB.

DUMMYUNIONNAME.RetrieveData.Length

Lunghezza in byte del buffer. Questo valore è allineato a 4 KB a meno che l'intervallo descritto termina sulla dimensione del file logico (EoF), in tal caso, la lunghezza non deve essere allineata a 4 KB fino a quando termina o oltre le dimensioni del file logico.

DUMMYUNIONNAME.RetrieveData.ReturnedLength

Numero di byte recuperati al completamento dell'operazione.

DUMMYUNIONNAME.AckData

Un provider di sincronizzazione esegue un'operazione di ACK_DATA come parte dell'idratazione segnaposto dopo aver convalidato l'integrità dei dati trasferiti in precedenza alla piattaforma. Questa operazione può essere eseguita come risposta a un callback FETCH_DATA , un callback VALIDATE_DATA o come parte di un impegno di idratazione in background preemptive all'esterno di qualsiasi contesto di callback.

Questa API è applicabile solo per i provider di sincronizzazione che supportano un criterio di idratazione minore di ALWAYS_FULL. In caso contrario, l'operazione non sarà riuscita con STATUS_CLOUD_FILE_NOT_SUPPORTED.

Il provider di sincronizzazione è necessario per specificare il modificatore dei criteri di idratazione VALIDATE_REQUIRED al momento della registrazione radice di sincronizzazione per eseguire questa operazione. In caso contrario, l'operazione non sarà riuscita con STATUS_CLOUD_FILE_NOT_SUPPORTED.

Il provider di sincronizzazione deve avere READ_DATA o WRITE_DAC accesso al file in cui eseguire l'operazione di ACK_DATA . In caso contrario, l'operazione non sarà riuscita con STATUS_CLOUD_FILE_ACCESS_DENIED.

Per eseguire questa operazione:

  • OpInfo.Type deve essere impostato su CF_OPERATION_TYPE_ACK_DATA.
  • OpParams.ParamSize deve essere impostato sulla dimensione esatta di OpParams.AckData e l'offset di OpParams.AckData.
  • OpParams.AckData.Flags deve essere impostato su CF_OPERATION_ACK_DATA_FLAG_NONE.
  • OpParams.AckData.CompletionStatus deve essere impostato su STATUS_SUCCESS se il provider di sincronizzazione convalida i dati all'interno dell'intervallo da riconoscere è valido. Se il provider di sincronizzazione non riesce a convalidare i dati per qualsiasi motivo e non vuole riavviare l'idratazione, deve impostare uno stato STATUS_CLOUD_FILE_* in CompletionStatus. Qualsiasi codice di stato restituito all'esterno dell'intervallo STATUS_CLOUD_FILE_* ad eccezione di STATUS_SUCCESS verrà convertito in STATUS_CLOUD_FILE_UNSUCCESSFUL dalla piattaforma.
  • OpParams.AckData.Offset e OpParams.AckData.Length descrivono un intervallo nel segnaposto i cui dati verranno riconosciuti dal provider di sincronizzazione. L'intervallo richiesto non deve essere completamente idratato da un'operazione TRANSFER_DATA prima dell'operazione. Offset eLength sono allineati a 4 KB, a meno che l'intervallo descritto termini per le dimensioni del file logico (EoF), nel qual caso, La lunghezza non deve essere allineata a 4 KB purché termini con o oltre le dimensioni del file logico.
  • Lunghezza di -1, indicata come CF_EOF, significa infinito (ad esempio, alla fine del file).

Al termine di un'operazione di ACK_DATA , tutte le richieste di I/O utente in sospeso nel file segnaposto che hanno ricevuto tutti i byte necessari in seguito all'operazione di ACK_DATA verranno completate; in caso contrario, le richieste di I/O dell'utente incomplete verranno aggiornate in modo da riflettere lo stato di idratazione più recente. In un caso di ACK_DATA non riuscito, tutte le richieste di I/O utente in sospeso nel file segnaposto che si sovrappongono all'intervallo, come descritto dall'offset e alla lunghezza, avranno esito negativo con CompletionStatus.

DUMMYUNIONNAME.AckData.Flags

Flag per il riconoscimento dei dati. Deve essere impostato su CF_OPERATION_ACK_DATA_FLAG_NONE. Per altre informazioni, vedere CF_OPERATION_ACK_DATA_FLAGS .

DUMMYUNIONNAME.AckData.CompletionStatus

Stato di completamento del riconoscimento dei dati. Questa impostazione deve essere impostata su STATUS_SUCCESS se il provider di sincronizzazione convalida i dati all'interno dell'intervallo da riconoscere è valido. Se il provider di sincronizzazione non riesce a convalidare i dati per qualsiasi motivo e non vuole riavviare l'idratazione, deve impostare uno stato STATUS_CLOUD_FILE_* in CompletionStatus. Qualsiasi codice di stato restituito al di fuori dell'intervallo di STATUS_CLOUD_FILE_* ad eccezione di STATUS_SUCCESS verrà convertito in STATUS_CLOUD_FILE_UNSUCCESSFUL dalla piattaforma.

DUMMYUNIONNAME.AckData.Offset

Offset in byte dei dati segnaposto da riconoscere. Offset descrive un intervallo nel segnaposto i cui dati verranno riconosciuti dal provider di sincronizzazione. L'intervallo richiesto non deve essere completamente idratato da un'operazione TRANSFER_DATA prima dell'operazione. L'offset deve essere allineato a 4 KB.

DUMMYUNIONNAME.AckData.Length

Lunghezza in byte di dati nel segnaposto da riconoscere. Deve essere allineato a 4 KB, a meno che l'intervallo descritto termini per le dimensioni del file logico (EoF), nel qual caso la lunghezza non deve essere allineata a 4 KB fino a quando termina con o oltre le dimensioni del file logico. Lunghezza di -1, indicata come CF_EOF, significa infinito (ad esempio, alla fine del file).

DUMMYUNIONNAME.RestartHydration

Un provider di sincronizzazione esegue un'operazione di RESTART_HYDRATION per riavviare un'idratazione in corso. Questa operazione può essere eseguita come risposta a un callback FETCH_DATA , un callback VALIDATE_DATA o come parte di uno sforzo di idratazione in background preemptive all'esterno di qualsiasi contesto di callback.

Questa API è applicabile solo ai provider di sincronizzazione che supportano i criteri di idratazione FULL . In caso contrario, l'operazione non sarà riuscita con STATUS_CLOUD_FILE_NOT_SUPPORTED.

Il provider di sincronizzazione deve avere WRITE_DATA o WRITE_DAC l'accesso al file in cui deve essere eseguita l'operazione di RESTART_HYDRATION . In caso contrario, l'operazione non sarà riuscita con STATUS_CLOUD_FILE_ACCESS_DENIED.

Per eseguire questa operazione:

  • OpInfo.Type deve essere impostato su CF_OPERATION_TYPE_RESTART_HYDRATION.
  • OpParams.ParamSize deve essere impostato sulla dimensione esatta di OpParams.RestartHydration più l'offset di OpParams.RestartHydration.
  • OpParams.RestartHydration.Flags deve essere impostato su CF_OPERATION_RESTART_HYDRATION_FLAG_NONE o CF_OPERATION_RESTART_HYDRATION_FLAG_MARK_IN_SYNC.
    • Se si specifica CF_OPERATION_RESTART_HYDRATION_FLAG_MARK_IN_SYNC , il segnaposto verrà contrassegnato come sincronizzato dopo un'operazione di RESTART_HYDRATION riuscita.
  • OpParams.RestartHydration.FsMetadata è facoltativo. Se specificato:
    • Un 0 valore nel campo timestamp (CreationTime, LastAccessTime, LastWriteTime e ChangeTime) indica che non viene apportata alcuna modifica al timestamp corrente nel file.
    • Un 0 valore in FileAttributes indica che non è stata apportata alcuna modifica agli attributi del file corrente nel file.
    • Non esiste alcun valore speciale in FileSize. Un 0 valore in FileSize tronca le dimensioni del file a 0.
  • OpParams.RestartHydration.FileIdentity e OpParams.RestartHydration.FileIdentityLength sono facoltativi. Se specificato, la nuova identità verrà salvata in modo permanente nel file. In caso contrario, l'identità del file corrente rimane.

Il provider di sincronizzazione chiama questa API nel caso in cui determini i dati su disco in un segnaposto non è valido e non è adatto per soddisfare le richieste di I/O. Lo scenario tipico è che i dati recuperati per qualche motivo non hanno superato la verifica del checksum. Un altro scenario di utilizzo si verifica quando nel corso dell'idratazione, il contenuto del file è stato effettivamente aggiornato nel cloud e il provider di sincronizzazione non è in grado di recuperare il contenuto cronologico dal cloud corrispondente alla versione segnaposto locale.

Al termine del riavvio, il segnaposto verrà completamente disidratato e aggiornato con i nuovi metadati, se presenti. Le richieste di I/O degli utenti in sospeso, se presenti, verranno rielaborate come se arrivassero e, di conseguenza, il provider di sincronizzazione riceverà nuovi callback esattamente uguali a quelli ricevuti in precedenza dal provider di sincronizzazione.

Se, tuttavia, il riavvio non è riuscito per qualsiasi motivo, il segnaposto potrebbe essere lasciato in uno stato non deterministico a seconda della posizione in cui si è verificato l'errore e tutte le richieste di I/O dell'utente in sospeso sul segnaposto non saranno riuscite con lo stesso errore. L'unica cosa che la piattaforma garantisce in questo caso è che l'accesso utente futuro al file segnaposto attiverà gli stessi callback.

DUMMYUNIONNAME.RestartHydration.Flags

Flag per riavviare l'idratazione segnaposto. Deve essere impostato su CF_OPERATION_RESTART_HYDRATION_FLAG_NONE o CF_OPERATION_RESTART_HYDRATION_FLAG_MARK_IN_SYNC. Se si specifica CF_OPERATION_RESTART_HYDRATION_FLAG_MARK_IN_SYNC , il segnaposto verrà contrassegnato come sincronizzato dopo un'operazione di RESTART_HYDRATION riuscita. Per altre informazioni, vedere CF_OPERATION_RESTART_HYDRATION_FLAGS .

DUMMYUNIONNAME.RestartHydration.FsMetadata

facoltativo. Contiene aggiornamenti ai metadati dei file. Se specificato:

  • Un 0 valore nel campo timestamp (CreationTime, LastAccessTime, LastWriteTime e ChangeTime) indica che non viene apportata alcuna modifica al timestamp corrente nel file.
  • Un 0 valore in FileAttributes indica che non viene apportata alcuna modifica agli attributi del file corrente nel file.
  • Non esiste alcun valore speciale in FileSize. Un 0 valore in FileSize tronca le dimensioni del file a 0.

DUMMYUNIONNAME.RestartHydration.FileIdentity

facoltativo. Se specificato, l'identità del file viene aggiornata a questo valore. In caso contrario, rimane invariato.

DUMMYUNIONNAME.RestartHydration.FileIdentityLength

facoltativo. Specifica la lunghezza dell'oggetto FileIdentity.

DUMMYUNIONNAME.TransferPlaceholders

DUMMYUNIONNAME.TransferPlaceholders.Flags

Flag per il trasferimento dei segnaposto. Per altre informazioni, vedere CF_OPERATION_TRANSFER_PLACEHOLDERS_FLAGS .

DUMMYUNIONNAME.TransferPlaceholders.CompletionStatus

Stato di completamento dell'operazione dei segnaposto di trasferimento.

DUMMYUNIONNAME.TransferPlaceholders.PlaceholderTotalCount

Numero totale di segnaposto.

DUMMYUNIONNAME.TransferPlaceholders.PlaceholderArray

Matrice di segnaposto da trasferire.

DUMMYUNIONNAME.TransferPlaceholders.PlaceholderCount

Numero di segnaposto trasferiti.

DUMMYUNIONNAME.TransferPlaceholders.EntriesProcessed

Voci segnaposto elaborate.

DUMMYUNIONNAME.AckDehydrate

DUMMYUNIONNAME.AckDehydrate.Flags

Flag di riconoscimento dei dati disidratati. Per altre informazioni, vedere CF_OPERATION_ACK_DEHYDRATE_FLAGS .

DUMMYUNIONNAME.AckDehydrate.CompletionStatus

Stato di completamento dell'operazione di disidratazione di conferma. Questa impostazione deve essere impostata su STATUS_SUCCESS se il provider di sincronizzazione è in grado di consentire l'esecuzione della disidratazione. Se il provider di sincronizzazione intende impedire la disidratazione per qualsiasi motivo, deve impostare uno stato STATUS_CLOUD_FILE_* in CompletionStatus. Qualsiasi codice di stato restituito al di fuori dell'intervallo di STATUS_CLOUD_FILE_* ad eccezione di STATUS_SUCCESS verrà convertito in STATUS_CLOUD_FILE_UNSUCCESSFUL dalla piattaforma.

DUMMYUNIONNAME.AckDehydrate.FileIdentity

Identità del file segnaposto per cui confermare i dati disidratati.

DUMMYUNIONNAME.AckDehydrate.FileIdentityLength

Lunghezza, in byte, di FileIdentity.

DUMMYUNIONNAME.AckRename

DUMMYUNIONNAME.AckRename.Flags

Confermare la ridenominazione dei flag segnaposto. Per altre informazioni, vedere CF_OPERATION_ACK_RENAME_FLAGS .

DUMMYUNIONNAME.AckRename.CompletionStatus

Stato di completamento dell'operazione di conferma della ridenominazione. Questa impostazione deve essere impostata su STATUS_SUCCESS se il provider di sincronizzazione è in grado di consentire l'esecuzione dell'operazione di ridenominazione. Se il provider di sincronizzazione intende impedire la ridenominazione per qualsiasi motivo, deve impostare uno stato STATUS_CLOUD_FILE_* in CompletionStatus. Qualsiasi codice di stato restituito al di fuori dell'intervallo di STATUS_CLOUD_FILE_* ad eccezione di STATUS_SUCCESS verrà convertito in STATUS_CLOUD_FILE_UNSUCCESSFUL dalla piattaforma.

DUMMYUNIONNAME.AckDelete

DUMMYUNIONNAME.AckDelete.Flags

Confermare i flag di eliminazione. Per altre informazioni, vedere CF_OPERATION_ACK_DELETE_FLAGS .

DUMMYUNIONNAME.AckDelete.CompletionStatus

Stato di completamento dell'operazione di conferma eliminazione. Questa impostazione deve essere impostata su STATUS_SUCCESS se il provider di sincronizzazione è in grado di consentire l'esecuzione dell'operazione di eliminazione. Se il provider di sincronizzazione intende impedire l'eliminazione per qualsiasi motivo, deve impostare uno stato STATUS_CLOUD_FILE_* in CompletionStatus. Qualsiasi codice di stato restituito al di fuori dell'intervallo di STATUS_CLOUD_FILE_* ad eccezione di STATUS_SUCCESS verrà convertito in STATUS_CLOUD_FILE_UNSUCCESSFUL dalla piattaforma.

Requisiti

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

Vedi anche

CfExecute

CF_OPERATION_TRANSFER_DATA_FLAGS

CF_OPERATION_RETRIEVE_DATA_FLAGS