Important:
This is retired content. This content is outdated and is no longer being maintained. It is provided as a courtesy for individuals who are still using these technologies. This content may contain URLs that were valid when originally published, but now link to sites or pages that no longer exist.
A version of this page is also available for
4/8/2010

This I/O control marks the specified file as sparse. In a sparse file, large ranges of zeros may not require disk allocation. Space for nonzero data is allocated as needed as the file is written.

Parameters

hDevice

[in] Handle to the file or alternate stream to be made sparse. To obtain a handle, call the CreateFilefunction.

dwIoControlCode

[in] Set to FSCTL_SET_SPARSE.

lpInBuf

Not used. Set to NULL.

nInBufSize

Not used. Set to zero.

lpOutBuf

Not used. Set to NULL.

nOutBufSize

Not used. Set to NULL.

lpBytesReturned

[out] Pointer to a variable that receives the size of the data stored in the output buffer, in bytes.

lpOverlapped

Not used.

Return Values

If the operation succeeds, the DeviceIoControlfunction returns a nonzero value. If the operation fails, DeviceIoControlreturns zero. For extended error information, call GetLastError.

Remarks

This I/O control sets the FILE_ATTRIBUTE_SPARSE_FILE attribute of the specified file. The only way to clear this attribute is to overwrite the file, for example, by calling the CreateFilefunction with the CREATE_ALWAYS flag.

Requirements

Header fsioctl.h
Windows Embedded CE Windows CE 5.0 and later
Windows Mobile Windows Mobile Version 5.0 and later

See Also

Reference

FS I/O Controls
CreateFile

Other Resources

DeviceIoControl