// ntdddisk.h
// CTL_CODE(0x0007, 0x035, METHOD_BUFFERED, FILE_READ_ACCESS)
#define IOCTL_DISK_GET_CACHE_INFORMATION 0x000740D4
View the official Windows Driver Kit DDI reference// winioctl.h
// CTL_CODE(0x0007, 0x035, METHOD_BUFFERED, FILE_READ_ACCESS)
#define IOCTL_DISK_GET_CACHE_INFORMATION 0x000740D4
View the official Win32 API referenceNo description available.
Returns disk cache configuration data.
None.
None.
The device driver returns the DISK_CACHE_INFORMATION in the buffer at Irp->AssociatedIrp.SystemBuffer.
Parameters.DeviceIoControl.OutputBufferLength in the I/O stack location of the IRP indicates the size, in bytes, of the buffer made available to the driver, which must be >= sizeof(DISK_CACHE_INFORMATION). Otherwise, the driver returns with an error status of STATUS_BUFFER_TOO_SMALL.
The Information field is set to the size of the block of status information being returned, sizeof(DISK_CACHE_INFORMATION). The Status field is set to STATUS_SUCCESS, or possibly to STATUS_DEVICE_NOT_READY, STATUS_BUFFER_TOO_SMALL, STATUS_INSUFFICIENT_RESOURCES, STATUS_IO_DEVICE_ERROR, or STATUS_NOT_SUPPORTED.
Retrieves the disk cache configuration data.
To perform this operation, call the DeviceIoControl function with the following parameters.
BOOL DeviceIoControl(
(HANDLE) hDevice, // handle to device
IOCTL_DISK_GET_CACHE_INFORMATION, // dwIoControlCode
NULL, // lpInBuffer
0, // nInBufferSize
(LPVOID) lpOutBuffer, // output buffer
(DWORD) nOutBufferSize, // size of output buffer
(LPDWORD) lpBytesReturned, // number of bytes returned
(LPOVERLAPPED) lpOverlapped // OVERLAPPED structure
);
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.
To set the disk cache information, use the IOCTL_DISK_SET_CACHE_INFORMATION control code.