本文整理自网络,侵删。
unit Unit1; interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, ExtCtrls,ActiveX, ComObj, StdCtrls; type TForm1 = class(TForm) Button1: TButton; procedure Button1Click(Sender: TObject); private { Private declarations } public { Public declarations } end; var Form1: TForm1; implementation {$R *.dfm} procedure TForm1.Button1Click(Sender: TObject);var Locator:OleVariant; WMI:OleVariant; RET:OleVariant; Enum:IEnumVariant; Tmp:OleVariant; Value:Cardinal;begin Locator:=CreateOleObject('WbemScriptingSWbemLocator'); WMI := Locator.ConnectServer('.', '', '', ''); Ret := WMI.ExecQuery('SELECT * FROM Win32_USBHub');//这里Win32_USBHub为检测项,详见下表 //这里Win32_USBHub为检测项,详见下表 Enum:= IUnknown(RET._NewEnum) as IEnumVariant; while (Enum.Next(1, Tmp, Value) = S_OK) do begin if Tmp.Name='USB Mass Storage Device' thenShowMessage('这个U盘的硬件特征码是'+Tmp.PNPDeviceID);//Tmp为检测到返回的数据集合,其中PNPDeviceID为集合中的对象,包含了PID和VID码 end;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
相关阅读 >>
Delphi winapi: settimer、killtimer - 创建与移除高性能定时器
Delphi xe andriod 文件后缀对应mime类型
Delphi读取android设备联系人.Delphixe6中编译通过
Delphi 10 seattle plus 新特性――system.json.builders
更多相关阅读请进入《Delphi》频道 >>