Platform SDK: Hardware

MOVE_FILE_DATA

The MOVE_FILE_DATA structure provides input data to the DeviceIoControl FSCTL_MOVE_FILE operation.

typedef struct {
  HANDLE FileHandle;
  LARGE_INTEGER StartingVcn;
  LARGE_INTEGER StartingLcn;
  DWORD ClusterCount;
} MOVE_FILE_DATA, *PMOVE_FILE_DATA;

Members

FileHandle
Handle to the file to be moved. To obtain a handle to a file, use CreateFile.

If the file is encrypted, the handle must have FILE_READ_DATA, FILE_WRITE_DATA, FILE_APPEND_DATA, or FILE_EXECUTE access. For more information, see File and Directory Security.

StartingVcn
The VCN (cluster number relative to the beginning of the file) of the first cluster to be moved.
StartingLcn
The LCN (cluster number on the volume) to which the VCN is to be moved.
ClusterCount
The count of clusters to be moved.

Remarks

To obtain data to fill in this structure, use the DeviceIoControl FSCTL_GET_RETRIEVAL_POINTERS operation.

The first cluster of a directory on a FAT volume cannot be moved.

Requirements

  Windows NT/2000: Requires Windows 2000.
  Windows 95/98: Unsupported.
  Header: Declared in Winioctl.h.

See Also

Device Input and Output Overview, Device Input and Output Structures, Defragmentation, DeviceIoControl, CreateFile, GetFileAttributesEx, GetFileAttributes, GetFileInformationByHandle, FSCTL_GET_RETRIEVAL_POINTERS, FSCTL_MOVE_FILE