共用方式為


IOCTL_FLASH_PDD_LOCK_BLOCKS (Compact 2013)

3/26/2014

This I/O control message locks one or more contiguous ranges of physical blocks; such that block cannot be unlocked without a power reset. If support for block locking is desired, then this I/O control message must be implemented. Send this message with DeviceIoControl.

Syntax

BOOL DeviceIoControl(
    HANDLE hDevice,           // handle to the device
    DWORD dwIoControlCode,    // use IOCTL_FLASH_PDD_LOCK_BLOCKS
    LPVOID lpInBuffer,        // pointer to input buffer
    DWORD nInBufferSize,      // input buffer size
    LPVOID lpOutBuffer,       // pointer to output buffer
    DWORD nOutBufferSize,     // output buffer size
    LPDWORD lpBytesReturned,  // number of bytes returned
    OVERLAPPED lpOverlapped,  // pointer to OVERLAPPED structure
);

Parameters

  • hDevice
    [in] Handle to the device.
  • dwIoControlCode
    [in] The control code for the operation. Use IOCTL_FLASH_PDD_LOCK_BLOCKS for this operation.
  • lpInBuffer
    [in] Pointer to an array of BLOCK_RUN structures. Each element of the array specifies a single run of blocks to lock. All other blocks should be unlocked.
  • nInBufferSize
    [in] Size of the BLOCK_RUN structure multiplied by the number of elements in the array.
  • lpOutBuffer
    Not used; set to NULL.
  • nOutBufferSize
    Not used; set to zero.
  • lpBytesReturned
    Not used; set to NULL.

Return Values

Returns nonzero if successful; otherwise, returns zero.

Remarks

To get extended error information, call GetLastError. GetLastError may return other standard error messages as appropriate.

Requirements

Header

FlashPdd.h

See Also

Reference

Flash Driver PDD IOCTLs