设为首页 加入收藏
首 页 企业简介 项目案例 软件定制 行业软件 解决方案 企业资讯 服务专区 客服中心
服务项目
案例展示 更多 >>
·生产流程监控 2020/11/26
·上位机软件定制开发 2020/9/29
·手机端公众号集成开发 2020/6/5
·业务技能培训学习软件 2020/6/5
·润宇司法行政管理综合平… 2010/12/6
·连锁店管理系统软件 2010/7/31
·医院管理系统软件 2010/7/27
·驾校查询系统软件 2010/7/15
·生产管理系统软件 2010/1/30
·人事管理系统软件 2010/1/30
联系人:李先生
电  话:029-87878512
手  机:13468700578
地  址:西安市丝路国际创意梦工厂4号楼
在线咨询:  762176615
Email:junsoft@126.com
 
当前的位置 >> 返回首页 >> 营销方案
软件开发实现采集windows计算机硬件参数
发布者:西安软件公司   发布时间:2019/2/27   阅读:16次

实现思路: 
通过 System.Management 下的 ManagementObjectSearcher 类,可以方便的读取到计算机硬件信息。 
1.首先代码中引入命名空间: 
using System.Management; 

2.实例化ManagementObjectSearcher类 
ManagementObjectSearcher searcher = new ManagementObjectSearcher( "select * from " + Key); 

3.上面的代码中的Key是用来读取数据时替换的变量。例如,为了获得CPU的信息,需要传入的key为:Win32_Processor。 

4.关键代码: 

private void InsertInfo(string key, ref ListView listView, bool dontInsertNull) 

    listView.Items.Clear(); 
  
    var searcher = new ManagementObjectSearcher("select * from " + key); 
  
    try 
    { 
        foreach (var o in searcher.Get()) 
        { 
            var share = (ManagementObject) o; 
            ListViewGroup listViewGroup; 
            try 
            { 
                listViewGroup = listView.Groups.Add(share["Name"].ToString(), share["Name"].ToString()); 
            } 
            catch 
            { 
                listViewGroup = listView.Groups.Add(share.ToString(), share.ToString()); 
            } 
  
            if (share.Properties.Count <= 0) 
            { 
                MessageBox.Show("No Information Available", "No Info", MessageBoxButtons.OK, 
                    MessageBoxIcon.Information); 
                return; 
            } 
            foreach (var data in share.Properties) 
            { 
                var item = new ListViewItem(listViewGroup); 
                if (listView.Items.Count % 2 != 0) 
                    item.BackColor = Color.White; 
                else 
                    item.BackColor = Color.WhiteSmoke; 
                item.Text = data.Name; 
                if (data.Value != null && data.Value.ToString() != "") 
                { 
                    switch (data.Value.GetType().ToString()) 
                    { 
                        case "System.String[]": 
                            var str = (string[]) data.Value; 
                            var str2 = ""; 
                            foreach (var st in str) 
                                str2 += st + " "; 
                            item.SubItems.Add(str2); 
                            break; 
                        case "System.UInt16[]": 
                            var shortData = (ushort[]) data.Value; 
                            var tstr2 = ""; 
                            foreach (var st in shortData) 
                                tstr2 += st + " "; 
                            item.SubItems.Add(tstr2); 
                            break; 
                        default: 
                            item.SubItems.Add(data.Value.ToString()); 
                            break; 
                    } 
                } 
                else 
                { 
                    if (!dontInsertNull) 
                        item.SubItems.Add("No Information available"); 
                    else 
                        continue; 
                } 
                listView.Items.Add(item); 
            } 
        } 
    } 
    catch (Exception exp) 
    { 
        MessageBox.Show("can’t get data because of the followeing error \n" + exp.Message, "Error", 
            MessageBoxButtons.OK, MessageBoxIcon.Information); 
    } 

网站首页 | 关于我们 | 售后服务 | 网站地图 | 查看留言 | 在线留言 | 客服中心
© 版权所有:西安润宇软件科技有限公司 
公司地址:西安市丝路国际创意梦工厂4号楼 联系电话:029-87878512 手机:13468700578 联系人:李先生
Copyright ® 2011-2023 Xbwbw.com Inc. All Rights Reserved 
技术支持:西安润宇软件科技有限公司  陕ICP备11000720号