在Delphi调用WMI读取USB设备的PID和VID
来源:优易学  2011-12-10 18:21:25   【优易学:中国教育考试门户网】   资料下载   IT书店

  WMI(Windows®Management Instrumentation ) 非常强大,它可以以数据库的形式查询你的电脑的软件和硬件,在它的数据库里面,时刻保存着最新的软件信息和硬件信息,因此你可以用WMI来检测CUP主频、温度,读取WINDOWS的进程.........
  本文就介绍如何使用WMI读取USB设备的PID和VID码
  procedure TForm1.Button2Click(Sender: TObject);
  var
  Locator: OleVariant;
  WMI: OleVariant;
  RET: OleVariant;
  Enum: IEnumVariant;
  Tmp: OleVariant;
  Value: Cardinal;
  begin;
  Locator := CreateOleObject(’WbemScripting.SWbemLocator’);
  WMI := Locator.ConnectServer(’.’, ’’, ’’, ’’);
  Ret := WMI.ExecQuery(’SELECT * FROM Win32_USBHub’);//这里Win32_USBHub为检测项,详见下表
  Enum:= IUnknown(RET._NewEnum) as IEnumVariant;
  while (Enum.Next(1, Tmp, Value) = S_OK) do
  begin
  ShowMessage(Tmp.PNPDeviceID);//Tmp为检测到返回的数据集合,其中PNPDeviceID为集合中的对象,包含了PID和VID码
  end;
  end;
  Win32_USBHub只是冰山一角,常用的还有以下
  \"Win32_1394Controller\" ,
  \"Win32_BaseBoard\" ,
  \"Win32_Battery\" ,
  \"Win32_BIOS\" ,
  \"Win32_Bus\" ,
  \"Win32_CacheMemory\" ,
  \"Win32_CDROMDrive\" ,
  \"Win32_CurrentProbe\" ,
  \"Win32_DesktopMonitor\" ,
  \"Win32_DeviceMemoryAddress\" ,
  \"Win32_DiskDrive\" ,
  \"Win32_DisplayConfiguration\" ,
  \"Win32_DisplayControllerConfiguration\",
  \"Win32_DMAChannel\" ,
  \"Win32_Fan\" ,
  \"Win32_FloppyController\" ,
  \"Win32_FloppyDrive\" ,
  \"Win32_HeatPipe\" ,
  \"Win32_IDEController\" ,
  \"Win32_InfraredDevice\" ,
  \"Win32_IRQResource\" ,
  \"Win32_Keyboard\" ,
  \"Win32_MemoryArray\" ,
  \"Win32_MemoryDevice\" ,
  \"Win32_MotherboardDevice\" ,

  \"Win32_NetworkAdapter\" ,
  \"Win32_NetworkAdapterConfiguration\" ,
  \"Win32_OnBoardDevice\" ,
  \"Win32_ParallelPort\" ,
  \"Win32_PCMCIAController\" ,
  \"Win32_PhysicalMemory\" ,
  \"Win32_PhysicalMemoryArray\" ,
  \"Win32_PnPEntity\" ,
  \"Win32_PointingDevice\" ,
  \"Win32_PortableBattery\" ,
  \"Win32_PortConnector\" ,
  \"Win32_PortResource\" ,
  \"Win32_POTSModem\" ,
  \"Win32_PowerManagementEvent\" ,
  \"Win32_Printer\" ,
  \"Win32_PrinterConfiguration\" ,
  \"Win32_PrintJob\" ,
  \"Win32_Processor\" ,
  \"Win32_Refrigeration\" ,
  \"Win32_SerialPort\" ,
  \"Win32_SerialPortConfiguration\" ,
  \"Win32_SMBIOSMemory\" ,
  \"Win32_SoundDevice\" ,
  \"Win32_SystemEnclosure\" ,
  \"Win32_SystemMemoryResource\" ,
  \"Win32_SystemSlot\" ,
  \"Win32_TapeDrive\" ,
  \"Win32_TemperatureProbe\" ,
  \"Win32_UninterruptiblePowerSupply\" ,
  \"Win32_USBController\" ,
  \"Win32_VideoConfiguration\" ,
  \"Win32_VideoController\" ,
  \"Win32_VoltageProbe\" ,

责任编辑:小草

文章搜索:
 相关文章
热点资讯
资讯快报
热门课程培训