/// <summary> /// 读取 WMI 数据 /// </summary> /// <param name="lpPara"></param> public static void ReadWMIObjectThreadProc(IntPtr lpPara) { String strWin32Class = Marshal.PtrToStringBSTR(lpPara); try { ManagementObjectSearcher searcher = new ManagementObjectSearcher("SELECT * FROM " + strWin32Class); foreach (ManagementObject mngObj in searcher.Get()) { WMIObjData wmiObjData = new WMIObjData(); try { wmiObjData.WMIObjName = mngObj["Name"].ToString(); } catch { wmiObjData.WMIObjName = mngObj.ToString();mngObj.ToString(); } if (mngObj.Properties.Count <= 0) { return; } List<WMIPropertyData> wmiPropertyDataLisy = new List<WMIPropertyData>(); foreach (PropertyData propertyData in mngObj.Properties) { WMIPropertyData wmiPropertyData = new WMIPropertyData(); wmiPropertyData.WMIPropertyDataName = propertyData.Name; if (propertyData.Value != null && propertyData.Value.ToString() != "") { wmiPropertyData.WMIPropertyDataValue = propertyData.Value; } else { wmiPropertyData.WMIPropertyDataValue = "Null Data"; } wmiPropertyDataLisy.Add(wmiPropertyData); } wmiObjData.WMIPropertyDataList = wmiPropertyDataLisy; wmiObjDataList.Add(wmiObjData); } } catch (Exception ex) { } }
/// <summary> /// 读取 WMI 数据 /// </summary> /// <param name="lpPara"></param> public static void ReadWMIObjectThreadProc(IntPtr lpPara) { String strWin32Class = Marshal.PtrToStringBSTR(lpPara); try { ManagementObjectSearcher searcher = new ManagementObjectSearcher("SELECT * FROM " + strWin32Class); foreach (ManagementObject mngObj in searcher.Get()) { WMIObjData wmiObjData = new WMIObjData(); try { wmiObjData.WMIObjName = mngObj["Name"].ToString(); } catch { wmiObjData.WMIObjName = mngObj.ToString(); mngObj.ToString(); } if (mngObj.Properties.Count <= 0) { return; } List <WMIPropertyData> wmiPropertyDataLisy = new List <WMIPropertyData>(); foreach (PropertyData propertyData in mngObj.Properties) { WMIPropertyData wmiPropertyData = new WMIPropertyData(); wmiPropertyData.WMIPropertyDataName = propertyData.Name; if (propertyData.Value != null && propertyData.Value.ToString() != "") { wmiPropertyData.WMIPropertyDataValue = propertyData.Value; } else { wmiPropertyData.WMIPropertyDataValue = "Null Data"; } wmiPropertyDataLisy.Add(wmiPropertyData); } wmiObjData.WMIPropertyDataList = wmiPropertyDataLisy; wmiObjDataList.Add(wmiObjData); } } catch (Exception ex) { } }