Package com.sun.jna.platform.win32

# Class Cfgmgr32Util

java.lang.Object
com.sun.jna.platform.win32.Cfgmgr32Util

public abstract class Cfgmgr32Util extends Object
Cfgmgr32 utility API.

- ## Nested Class Summary

  Nested Classes
  Modifier and Type
  Class
  Description
  `static class`
  `Cfgmgr32Util.Cfgmgr32Exception`

- ## Constructor Summary

  Constructors
  Constructor
  Description
  `Cfgmgr32Util()`

- ## Method Summary

  Modifier and Type
  Method
  Description
  `static String`
  `CM_Get_Device_ID(int devInst)`
  Utility method to call Cfgmgr32's CM_Get_Device_ID_Size, allocates the required memory for the Buffer parameter based on the type mapping used, calls to CM_Get_Device_ID, and returns the received string.
  `static Object`
  `CM_Get_DevNode_Registry_Property(int devInst, int ulProperty)`
  Utility method to call Cfgmgr32's CM_Get_DevNode_Registry_Property that allocates the required memory for the Buffer parameter, and returns values of the appropriate type.

  ### Methods inherited from class java.lang.Object

  `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- ## Constructor Details

  - ### Cfgmgr32Util

    public Cfgmgr32Util()

- ## Method Details

  - ### CM_Get_Device_ID

    public static String CM_Get_Device_ID(int devInst) throws Cfgmgr32Util.Cfgmgr32Exception
    Utility method to call Cfgmgr32's CM_Get_Device_ID_Size, allocates the required memory for the Buffer parameter based on the type mapping used, calls to CM_Get_Device_ID, and returns the received string.
    Parameters:
      `devInst` - Caller-supplied device instance handle that is bound to the local machine.
    Returns:
      The device instance ID string.
    Throws:
      `Cfgmgr32Util.Cfgmgr32Exception`

  - ### CM_Get_DevNode_Registry_Property

    public static Object CM_Get_DevNode_Registry_Property(int devInst, int ulProperty) throws Cfgmgr32Util.Cfgmgr32Exception
    Utility method to call Cfgmgr32's CM_Get_DevNode_Registry_Property that allocates the required memory for the Buffer parameter, and returns values of the appropriate type.
    Parameters:
      `devInst` - Caller-supplied device instance handle that is bound to the local machine.
      `ulProperty` - A `CM_DRP_`-prefixed constant value that identifies the device property to be obtained from the registry. These constants are defined in Cfgmgr32.h.
    Returns:
      An `Object` containing the specified registry property for the device.

      If the property is of type `WinNT.REG_SZ`, a `String` is returned.

      If the property is of type `WinNT.REG_MULTI_SZ`, an array of `String` is returned.

      If the property is of type `WinNT.REG_DWORD`, an `Integer` is returned.

      If the property is of type `WinNT.REG_BINARY`, an array of `Byte` is returned.

      If no value exists for this property (error `Cfgmgr32.CR_NO_SUCH_VALUE`), returns `null`.

    Throws:
      `Cfgmgr32Util.Cfgmgr32Exception` - on any errors other than `Cfgmgr32.CR_NO_SUCH_VALUE`