WMI:插入时获取USB设备描述如何获取USB设备插入时的设备ID等描述?我找到了一个如何获取USB设备插入/移除通知的示例。但是如何获取设备描述信息呢?这是我的代码片段:WqlEventQueryq;ManagementScopescope=newManagementScope("root\CIMV2");scope.Options.EnablePrivileges=true;尝试{q=newWqlEventQuery();q.EventClassName="__InstanceDeletionEvent";问。WithinInterval=newTimeSpan(0,0,3);q.Condition=@"TargetInstanceISA'Win32_USBControllerdevice'";w=newManagementEventWatcher(scope,q);w.EventArrived+=newEventArrivedEventHandler(USBRemoved);w.开始();}...catch()....更新:实际上,它是一个带有USB连接的串行COM设备。所以没有driveName属性。我怎样才能得到我可以在设备管理器中看到的USB描述?WMI是否为有关USB插入的通知提供此信息?根据您更新的答案完成新答案。您可以检查任何连接的USB设备:ManagementScopesc=newManagementScope(@"\YOURCOMPUTERNAMErootcimv2");ObjectQueryquery=newObjectQuery("从Win32_USBHub中选择*");ManagementObjectSearcher搜索器=newManagementObjectSearcher(sc,query);ManagementObjectCollection结果=searcher.Get();foreach(ManagementObjectobjinresult){if(obj["Description"]!=null)Console.WriteLine("Description:t"+obj["Description"].ToString());if(obj["DeviceID"]!=null)Console.WriteLine("DeviceID:t"+obj["DeviceID"].ToString());如果(obj["PNPDeviceID"]!=null)Console.WriteLine("PNPDeviceID:t"+obj["PNPDeviceID"].ToString());}(请参阅MSDNWMI任事示例)或查看任何COMConnectedDeviceManagementScopesc=newManagementScope(@"\YOURCOMPUTERNAMErootcimv2");ObjectQueryquery=newObjectQuery("Select*fromWin32_SerialPort");searcher=newManagementObjectSearcher(sc,query);结果=searcher.Get();foreach(ManagementObjectobjinresult){if(obj["Caption"]!=null)Console.WriteLine("Caption:t"+obj["Description"].ToString());if(obj["Description"]!=null)Console.WriteLine("Description:t"+obj["DeviceID"].ToString());如果(obj["DeviceID"]!=null)Console.WriteLine("DeviceID:t"+obj["PNPDeviceID"].ToString());}(详见ActiveX专家)以上是C#学习教程:WMI:GetUSBdevicedescription的完整内容,插入时分享。如果对大家有用,需要进一步了解C#学习教程,希望大家多多关注。代表立场,如涉及侵权,请点击右侧联系管理员删除。如需转载请注明出处:
