Answered Win32_USBControllerDevice and its CIM_USBController

  • 2012年7月16日 17:36
     
     

    the usb contoller is defined in  http://msdn.microsoft.com/en-us/library/windows/desktop/aa394505(v=vs.85).aspx

    as this

    class Win32_USBControllerDevice : CIM_ControlledBy
    {
      uint16            AccessState;
      CIM_USBController REF Antecedent;
      CIM_LogicalDevice REF Dependent;
      uint32            NegotiatedDataWidth;
      uint64            NegotiatedSpeed;
      uint32            NumberOfHardResets;
      uint32            NumberOfSoftResets;
    };

    but for each controller i get the same CIM_USBController , so i think it is the root hub of the usb devices ?

    but how to acces the manufacturer then ? it is not in the cim logical device class ?

    http://msdn.microsoft.com/en-us/library/windows/desktop/aa387884(v=vs.85).aspx

    class CIM_LogicalDevice : CIM_LogicalElement
    {
      uint16   Availability;
      string   Caption;
      uint32   ConfigManagerErrorCode;
      boolean  ConfigManagerUserConfig;
      string   CreationClassName;
      string   Description;
      string   DeviceID;
      boolean  ErrorCleared;
      string   ErrorDescription;
      datetime InstallDate;
      uint32   LastErrorCode;
      string   Name;
      string   PNPDeviceID;
      uint16   PowerManagementCapabilities[];
      boolean  PowerManagementSupported;
      string   Status;
      uint16   StatusInfo;
      string   SystemCreationClassName;
      string   SystemName;
    };

    http://msdn.microsoft.com/en-us/library/windows/desktop/aa388644(v=vs.85).aspx

    class CIM_USBController : CIM_Controller
    {
      uint16   Availability;
      string   Caption;
      uint32   ConfigManagerErrorCode;
      boolean  ConfigManagerUserConfig;
      string   CreationClassName;
      string   Description;
      string   DeviceID;
      boolean  ErrorCleared;
      string   ErrorDescription;
      datetime InstallDate;
      uint32   LastErrorCode;
      string   Manufacturer;
      uint32   MaxNumberControlled;
      string   Name;
      string   PNPDeviceID;
      uint16   PowerManagementCapabilities[];
      boolean  PowerManagementSupported;
      uint16   ProtocolSupported;
      string   Status;
      uint16   StatusInfo;
      string   SystemCreationClassName;
      string   SystemName;
      datetime TimeOfLastReset;
    };


    nattelip

すべての返信

  • 2012年7月16日 19:58
     
     回答済み
    it is in the Win32_PnPEntity class , which you can get with a query on pnpdeviceid retreived from CIM_LogicalDevice

    nattelip

  • 2012年7月17日 3:34
     
     

    Hi lipjie,

    According to your description, I'd like to move this thread to General Windows Desktop Development Issues Forum for better support, where more experts live.

    Thanks for your understanding.


    Bob Shen [MSFT]
    MSDN Community Support | Feedback to us