Skip to content

Latest commit

 

History

History
112 lines (88 loc) · 3.64 KB

ni-winioctl-fsctl_duplicate_extents_to_file.md

File metadata and controls

112 lines (88 loc) · 3.64 KB
UID title description helpviewer_keywords old-location tech.root ms.assetid ms.date ms.keywords req.header req.include-header req.target-type req.target-min-winverclnt req.target-min-winversvr req.kmdf-ver req.umdf-ver req.ddi-compliance req.unicode-ansi req.idl req.max-support req.namespace req.assembly req.type-library req.lib req.dll req.irql targetos req.typenames req.redist f1_keywords dev_langs topic_type api_type api_location api_name
NI:winioctl.FSCTL_DUPLICATE_EXTENTS_TO_FILE
FSCTL_DUPLICATE_EXTENTS_TO_FILE
Instructs the file system to copy a range of file bytes on behalf of an application.
FSCTL_DUPLICATE_EXTENTS_TO_FILE
FSCTL_DUPLICATE_EXTENTS_TO_FILE control
FSCTL_DUPLICATE_EXTENTS_TO_FILE control code [Files]
fs.fsctl_duplicate_extents_to_file
winioctl/FSCTL_DUPLICATE_EXTENTS_TO_FILE
fs\fsctl_duplicate_extents_to_file.htm
fs
D66D2172-9308-4138-A321-867589787FED
12/05/2018
FSCTL_DUPLICATE_EXTENTS_TO_FILE, FSCTL_DUPLICATE_EXTENTS_TO_FILE control, FSCTL_DUPLICATE_EXTENTS_TO_FILE control code [Files], fs.fsctl_duplicate_extents_to_file, winioctl/FSCTL_DUPLICATE_EXTENTS_TO_FILE
winioctl.h
Windows.h
Windows
None supported
Windows Server 2016 [desktop apps only]
Windows
FSCTL_DUPLICATE_EXTENTS_TO_FILE
winioctl/FSCTL_DUPLICATE_EXTENTS_TO_FILE
c++
APIRef
kbSyntax
HeaderDef
WinIoCtl.h
FSCTL_DUPLICATE_EXTENTS_TO_FILE

FSCTL_DUPLICATE_EXTENTS_TO_FILE IOCTL

-description

Instructs the file system to copy a range of file bytes on behalf of an application. The destination file may be the same as, or different from, the source file. See Block Cloning for more information.

To perform this operation, call the DeviceIoControl function with the following parameters.

BOOL DeviceIoControl(
  (HANDLE)       hDevice,           // handle to device
  FSCTL_DUPLICATE_EXTENTS_TO_FILE,  // dwIoControlCode
  (LPVOID)       lpInBuffer,        // input buffer
  (DWORD)        nInBufferSize,     // size of input buffer
  NULL,                             // lpOutBuffer
  0,                                // nOutBufferSize
  (LPDWORD)      lpBytesReturned,   // number of bytes returned
  (LPOVERLAPPED) lpOverlapped       // OVERLAPPED structure
);

-ioctlparameters

-input-buffer

-input-buffer-length

-output-buffer

-output-buffer-length

-in-out-buffer

-inout-buffer-length

-status-block

Irp->IoStatus.Status is set to STATUS_SUCCESS if the request is successful.

Otherwise, Status to the appropriate error condition as a NTSTATUS code.

For more information, see NTSTATUS Values.

-remarks

For the implications of overlapped I/O on this operation, see the Remarks section of the DeviceIoControl topic.

See Block Cloning for more information on this operation.

In Windows Server 2016, this function is supported by the following technologies.

Technology Supported
Server Message Block (SMB) 3.1.1 protocol Yes
SMB 3.1.1 Transparent Failover (TFO) Yes
SMB 3.1.1 with Scale-out File Shares (SoFS) Yes
Cluster Shared Volume File System (CsvFS) Yes
Resilient File System (ReFS) Yes

-see-also