DosPhysicalDisk
Bindings: C, MASM
This call obtains information about partitionable disks.
DosPhysicalDisk (Function, DataPtr, DataLen, ParmPtr, ParmLen)
Function (USHORT) - input
The functions supported are:
Value Definition
1 Obtain total number of partitionable disks
2 Obtain a handle to use with Category 9 IOCTLs
3 Release a handle for a partitionable disk.
DataPtr (PBYTE) - output
Address of the buffer where the returned information is placed.
DataLen (USHORT) - input
Length of the data buffer. The output data for each function is
described below.
FUNCTION DATALEN RETURNED INFORMATION
1 2 Total number of partitionable disks in
the system, 1-based.
2 2 Handle for the specified partitionable
disk for the category 9 IOCTLs.
3 0 None. Pointer must be zero.
All lengths are in bytes.
ParmPtr (PBYTE) - input
Address of the buffer used for input parameters.
ParmLen (USHORT) - input
Length of the parameter buffer. The input parameters required for
each function are:
FUNCTION PARMLEN INPUT PARAMETERS
1 0 None. Must be set to zero.
2 String length ASCIIZ string that specifies the
partitionable disk.
3 2 Handle obtained from function 2.
Note: All lengths are in bytes.
rc (USHORT) - return
Return code descriptions are:
0 NO_ERROR
1 ERROR_INVALID_FUNCTION
5 ERROR_ACCESS_DENIED
6 ERROR_INVALID_HANDLE
33 ERROR_LOCK_VIOLATION
87 ERROR_INVALID_PARAMETER
Remarks
The ASCIIZ string used to specify the partitionable disk must be of the
following format:
number : <null byte>
Where:
number specifies the partitionable disk (1-based) number in ASCII
: must be present
<null byte> the byte of 0 for the ASCIIZ string
The handle returned for the specified partitionable disk can only be used
with the DosDevIOCtl call for the Category 9 Generic IOCTL. Use of the
handle for a physical partitionable disk is not permitted for
handle-based file system function calls, such as DosRead or DosClose.
Created using Inf-PHP v.2 (c) 2003 Yuri Prokushev
Created using Inf-HTML v.0.9b (c) 1995 Peter Childs