function (ULONG) - input

      The type of information to obtain about the partitionable disks.

      Possible values are shown in the following list:

    • INFO_COUNT_PARTITIONABLE_DISKS
      Obtain the total number of partitionable disks.

    • INFO_GETIOCTLHANDLE
      Obtain a handle to use with Category 09h Physical Disk Control IOCtl Commands.

    • INFO_FREEIOCTLHANDLE
      Release a handle for a partitionable disk.

    pBuf (PVOID) - input

      The address of the buffer where the returned information is placed.

      The output data for each function is shown in the following list (all lengths are in bytes):

      ┌──────────┬──────────┬────────────────────────────────────────┐│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 09h Physical Disk │
      │          │          │Control IOCtl Commands.                 │
      ├──────────┼──────────┼────────────────────────────────────────┤
      │ 3        │ 0        │None - pointer must be zero.            │
      └──────────┴──────────┴────────────────────────────────────────┘
      

    cbBuf (ULONG) - input

      The length, in bytes, of the data buffer.

    pParams (PVOID) - input

      The address of the buffer used for input parameters.

      The input parameters required for each function are as follows (all lengths are in bytes):

      ┌──────────┬─────────────┬─────────────────────────────────────┐│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.     │
      └──────────┴─────────────┴─────────────────────────────────────┘
      

      The ASCIIZ string used to specify the partitionable disk must be of the following format:

      number : <null byte>
      
      
      Where:

      number

        specifies the partitionable disk number (1-based) in ASCII.
      colon ( : )
        must be present.
      <null byte>
        is the byte of zero for the ASCIIZ string.

      cbParams (ULONG) - input

        The length, in bytes, of the parameter buffer.

      ulrc (APIRET) - returns

        Return Code.

        DosPhysicalDisk returns one of the following values:

      • NO_ERROR 1
          ERROR_INVALID_FUNCTION
        87
          ERROR_INVALID_PARAMETER
        For a full list of error codes, see Errors.


      [Back] [Next]