IOCTL_STORAGE_GET_PHYSICAL_ELEMENT_STATUS IOCTL (ntddstor.h)

The IOCTL_STORAGE_GET_PHYSICAL_ELEMENT_STATUS control code queries for and returns the physical element status from a device.

Major code

IRP_MJ_DEVICE_CONTROL

Input buffer

A pointer to an input buffer that receives a PHYSICAL_ELEMENT_STATUS_REQUEST structure that defines the starting element to look for the physical element status of a device.

Input buffer length

Specifies the size of the input buffer, in bytes.

Output buffer

A pointer to an output buffer that contains a PHYSICAL_ELEMENT_STATUS structure that defines the physical element status from a device.

Output buffer length

The size of the output buffer, in bytes.

Status block

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

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

For more information, see NTSTATUS Values.

Remarks

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

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

Requirements

Requirement Value
Minimum supported client Windows 10, version 1709
Header ntddstor.h (include WinIoctl.h)

See also

DeviceIoControl

PHYSICAL_ELEMENT_STATUS

PHYSICAL_ELEMENT_STATUS_REQUEST