有时候需要得到硬件信息绑定用户登录

代码如下:

  private string GetProcessSerialNumber()
{
try
{
ManagementObjectCollection ProcessCollection = new ManagementObjectSearcher(
new System.Management.ManagementScope("\\\\localhost\\root\\cimv2"),
new System.Management.ObjectQuery("SELECT * FROM Win32_processor")
).Get();
if (ProcessCollection != null && ProcessCollection.Count > )
{
StringBuilder sb = new StringBuilder();
foreach (ManagementObject mo in ProcessCollection)
{
sb.Append(mo["ProcessorId"]);
}
return sb.ToString();
}
else
{
return "";
}
}
catch (Exception)
{
return "";
}
} private string GetMotherBoardSerialNumber()
{
try
{
ManagementObjectCollection ProcessCollection = new ManagementObjectSearcher(
new System.Management.ManagementScope("\\\\localhost\\root\\cimv2"),
new System.Management.ObjectQuery("SELECT * FROM Win32_bios")
).Get();
if (ProcessCollection != null && ProcessCollection.Count > )
{
StringBuilder sb = new StringBuilder();
foreach (ManagementObject mo in ProcessCollection)
{
sb.Append(mo["SerialNumber"]);
}
return sb.ToString();
}
else
{
return "";
}
}
catch (Exception)
{
return "";
}
} private string GetHardDisk0SerialNumber()
{
try
{
ManagementObjectCollection ProcessCollection = new ManagementObjectSearcher(
new System.Management.ManagementScope("\\\\localhost\\root\\cimv2"),
new System.Management.ObjectQuery("SELECT * FROM Win32_DiskDrive")
).Get();
if (ProcessCollection != null && ProcessCollection.Count > )
{
StringBuilder sb = new StringBuilder();
foreach (ManagementObject mo in ProcessCollection)
{
if(mo["Name"].ToString().IndexOf("DRIVE0")!=-)
sb.Append(mo["SerialNumber"]);
}
return sb.ToString();
}
else
{
return "";
}
}
catch (Exception)
{
return "";
}
} private string GetNetWorkMACSerialNumber()
{
try
{
ManagementObjectCollection ProcessCollection = new ManagementObjectSearcher(
new System.Management.ManagementScope("\\\\localhost\\root\\cimv2"),
new System.Management.ObjectQuery("SELECT * FROM Win32_NetworkAdapterConfiguration")
).Get();
if (ProcessCollection != null && ProcessCollection.Count > )
{
StringBuilder sb = new StringBuilder();
foreach (ManagementObject mo in ProcessCollection)
{
if (mo["IPEnabled"].ToString() == "True")
sb.Append(mo["MacAddress"]);
}
return sb.ToString();
}
else
{
return "";
}
}
catch (Exception)
{
return "";
}
}

C#通过WMI获取硬件信息的更多相关文章

  1. WMI 获取硬件信息的封装函数与获取联想台式机的出厂编号方法

    原文:WMI 获取硬件信息的封装函数与获取联想台式机的出厂编号方法 今天玩了一把WMI,查询了一下电脑的硬件信息,感觉很多代码都是可以提取出来的,就自己把那些公共部分提出出来,以后如果要获取 某部分的 ...

  2. 主机性能监控之wmi 获取磁盘信息

    标 题: 主机性能监控之wmi 获取磁盘信息作 者: itdef链 接: http://www.cnblogs.com/itdef/p/3990541.html 欢迎转帖 请保持文本完整并注明出处 仅 ...

  3. 主机性能监控之wmi 获取进程信息

    标 题: 主机性能监控之wmi 获取进程信息作 者: itdef链 接: http://www.cnblogs.com/itdef/p/3990499.html 欢迎转帖 请保持文本完整并注明出处 仅 ...

  4. linux下dmidecode命令获取硬件信息

    linux下dmidecode命令获取硬件信息 2 A+ 所属分类:Linux 运维工具 dmidecode在 Linux 系统下获取有关硬件方面的信息.dmidecode 遵循 SMBIOS/DMI ...

  5. C#获取硬件信息

    //硬件信息 public class GF_Hardware { /// <summary> /// cpu序列号 /// </summary> /// <return ...

  6. ansible facts 获取硬件信息

    facts 指的是 ansible_facts 变量,ansible 中使用 setup 模块来获取,包含系统的大部分基础硬件信息, [root@10_1_162_39 host_vars]# ll ...

  7. 获取硬件信息的delphi源码CPUID、操作系统、Mac物理地址、计算机名称、IP地址、用户名

    {-----------------------------------------------------------------------------作者:sushengmiyan 2013.0 ...

  8. Web网站中利用JavaScript中ActiveXObject对象获取硬件信息(显示器数量、分辨率)从而进行单双屏跳转

    前言:最近这两天工作上,要实现一个功能,在好友阿聪的帮助下,算是比较好的解决了这个需求. B/S的Web网站,需要实现点击按钮时,根据客户端连接的显示屏(监视器)数量进行,单双屏跳转显示新页面. 由于 ...

  9. Powershell获取硬件信息

    1.获取系统的BIOS的信息: Get-WMIObject -Class Win32_BIOS 2.获取内存信息: Get-WMIObject -Class Win32_PhysicalMemory ...

随机推荐

  1. 四 linuk常用命令 1. 文件处理命令

    一. 命令格式与目录处理命令ls 命令格式 命令格式:命令 [-选项] [参数] 例:ls -la /etc 说明: 1.个别命令使用不遵循此格式 2. 当有多个选项时,可以写在一起 3.简化选项与完 ...

  2. FIddler+Proxifer工具对windows PC客户端进行抓包

    python的大火,带动了python爬虫. 爬虫就必定绕不开抓包. 目前最常见的就是网页抓包了,可以使用chrome进行,或者配合其他抓包软件 fiddler. 小程序有些兴起是,如跳一跳之类的,也 ...

  3. python进程概要

    进程 狭义:正在运行的程序实例. 广义:进程是一个具有一定独立功能的程序关于某个数据集合的一次运行活动,他是操作系统动态执行的基本单元. python的进程都是并行的. 并行:两个进程同时执行一起走. ...

  4. android 网络异步加载数据进度条

    ProgressDialog progressDialog = null; public static final int MESSAGETYPE = 0; private void execute( ...

  5. 宋宝华:关于ARM Linux原子操作的实现

    本文系转载,著作权归作者所有.商业转载请联系作者获得授权,非商业转载请注明出处. 作者: 宋宝华 来源: 微信公众号linux阅码场(id: linuxdev) 竞态无所不在 首先我们要理解竞态(ra ...

  6. 我的 Input框 不可能这么可爱

    <input /> 标签是我们日常开发中非常常见的替换元素了,但是最近在刷 whattwg 跟 MDN 的时候发现 跟 <input /> 有很多相关的属性,选择器都没怎么用过 ...

  7. PowerMock学习(十)之Mock spy的使用

    前言 回顾下之前学过的内容,会发现一点,如果在mock后不写when和thenReturn去指定,即便是mock调用任何方法,什么也不会做,也看不到什么效果. 划重点的时候来了,本身mock出来的对象 ...

  8. [ch04-02] 用梯度下降法解决线性回归问题

    系列博客,原文在笔者所维护的github上:https://aka.ms/beginnerAI, 点击star加星不要吝啬,星越多笔者越努力. 4.2 梯度下降法 有了上一节的最小二乘法做基准,我们这 ...

  9. 1. Python 基础概述 和 环境安装

    目录 Python 推荐书籍 开发环境 - Pyenv pyenv 使用 设置Python版本 virtualenv 虚拟环境 pip 通用配置 pip导出和导入 Jupyter 安装和配置 安装 j ...

  10. mysql 基础知识整理

    什么是MySQL? MySQL 是一种关系型数据库,在Java企业级开发中非常常用,因为 MySQL 是开源免费的,并且方便扩展.阿里巴巴数据库系统也大量用到了 MySQL,因此它的稳定性是有保障的. ...