/// <summary> /// 获取指定WMI路径的信息集合 /// </summary> public static IEnumerable<Dictionary<string, object>> GetWmiInfos(WMIPath wmi) { ManagementClass mc = new ManagementClass(wmi.ToString()); ManagementObjectCollection moc = mc.GetInstances(); return (from ManagementBaseObject mo in moc select mo.Properties.Cast<PropertyData>() .ToDictionary(property => property.Name, property => property.Value)) .ToList(); }
/// <summary> /// 获取指定WMI路径的信息集合 /// </summary> public static IEnumerable <Dictionary <string, object> > GetWmiInfos(WMIPath wmi) { ManagementClass mc = new ManagementClass(wmi.ToString()); ManagementObjectCollection moc = mc.GetInstances(); return((from ManagementBaseObject mo in moc select mo.Properties.Cast <PropertyData>() .ToDictionary(property => property.Name, property => property.Value)) .ToList()); }
private static string GetString(WMIPath path, string name, int index = 0) { try { WMI wmi = new WMI(path); if (wmi.Count > index) { var obj = wmi[index, name]; if (obj != null) { return(obj.ToString().Trim()); } } } catch (Exception e) { Console.WriteLine(e); } return(path.ToString()); }
/// <summary> /// 构造函数 /// </summary> /// <param name="path">path</param> public WMI(WMIPath path) : this(path.ToString()) { }
/// <summary> /// 获取WMI管理对象集合 /// </summary> /// <param name="path">WMI 路径</param> public static ManagementObjectCollection GetObjectCollection(WMIPath path) { ManagementClass mc = new ManagementClass(path.ToString()); return(mc.GetInstances()); }