CF_OPERATION_PARAMETERS structure (cfapi.h)

Parameters of an operation on a placeholder file or folder.

Syntax

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

DUMMYUNIONNAME.TransferData.Flags

Flags for transferring data.

DUMMYUNIONNAME.TransferData.CompletionStatus

Status for transferring data. Set to STATUS_SUCCESS if the sync provider will transfer data to a placeholder.

DUMMYUNIONNAME.TransferData.Buffer

A valid user mode buffer.

DUMMYUNIONNAME.TransferData.Offset

The offset used with the Length to describe a range in the placeholder to which the data is transferred.

DUMMYUNIONNAME.TransferData.Length

The length in bytes of the Buffer.

DUMMYUNIONNAME.RetrieveData

DUMMYUNIONNAME.RetrieveData.Flags

Flags for retrieving data.

DUMMYUNIONNAME.RetrieveData.Buffer

DUMMYUNIONNAME.RetrieveData.Offset

The offset used with the Length to describe the range of data retrieved from a placeholder.

DUMMYUNIONNAME.RetrieveData.Length

The length in bytes of the Buffer.

DUMMYUNIONNAME.RetrieveData.ReturnedLength

The number of bytes retrieved on successful completion.

DUMMYUNIONNAME.AckData

DUMMYUNIONNAME.AckData.Flags

Flags for acknowledging data.

DUMMYUNIONNAME.AckData.CompletionStatus

Completion status of data acknowledgment.

Set to STATUS_SUCCESS if the sync provider validates the data within the range to be acknowledged is good.

DUMMYUNIONNAME.AckData.Offset

The offset in bytes of the placeholder data to be acknowledged.

DUMMYUNIONNAME.AckData.Length

The length in bytes of data in the placeholder to be acknowledged.

DUMMYUNIONNAME.RestartHydration

DUMMYUNIONNAME.RestartHydration.Flags

Flags to restart placeholder hydration.

DUMMYUNIONNAME.RestartHydration.FsMetadata

Optional. Contains updates to the files metadata.

DUMMYUNIONNAME.RestartHydration.FileIdentity

Optional. When provided, the file identity is updated to this value. Otherwise, it remains the same.

DUMMYUNIONNAME.RestartHydration.FileIdentityLength

Optional. This specifies the length of the FileIdentity.

DUMMYUNIONNAME.TransferPlaceholders

DUMMYUNIONNAME.TransferPlaceholders.Flags

Flags for transferring placeholders.

DUMMYUNIONNAME.TransferPlaceholders.CompletionStatus

The completion status of the operation.

DUMMYUNIONNAME.TransferPlaceholders.PlaceholderTotalCount

Total number of placeholders.

DUMMYUNIONNAME.TransferPlaceholders.PlaceholderArray

An array of placeholders to be transferred.

DUMMYUNIONNAME.TransferPlaceholders.PlaceholderCount

The number of placeholders being transferred.

DUMMYUNIONNAME.TransferPlaceholders.EntriesProcessed

The placeholder entries that have been processed.

DUMMYUNIONNAME.AckDehydrate

DUMMYUNIONNAME.AckDehydrate.Flags

Dehydrated data acknowledgment flags.

DUMMYUNIONNAME.AckDehydrate.CompletionStatus

The completion status of the operation.

DUMMYUNIONNAME.AckDehydrate.FileIdentity

The file identity of the placeholder file to acknowledge dehydrated data for.

DUMMYUNIONNAME.AckDehydrate.FileIdentityLength

Length, in bytes, of the FileIdentity.

DUMMYUNIONNAME.AckRename

DUMMYUNIONNAME.AckRename.Flags

Acknowledge rename placeholder flags.

DUMMYUNIONNAME.AckRename.CompletionStatus

The completion status of the operation.

DUMMYUNIONNAME.AckDelete

DUMMYUNIONNAME.AckDelete.Flags

Acknowledge delete flags.

DUMMYUNIONNAME.AckDelete.CompletionStatus

The completion status of the operation.

Requirements

   
Minimum supported client Windows 10, version 1709 [desktop apps only]
Minimum supported server Windows Server 2016 [desktop apps only]
Header cfapi.h