我们在利用C#开发桌面程序(Winform)程序的时候,

经常需要获取一些跟系统相关的信息,

以下这些代码获取能有些用处。

c#中如何获取本机用户名、MAC地址、IP地址、硬盘ID、CPU序列号、系统名称、物理内存。

首先需要引入命名空间:

using System.Management;

/// 操作系统的登录用户名:

string GetUserName()
{try{string st = "";ManagementClass mc = new ManagementClass("Win32_ComputerSystem");ManagementObjectCollection moc = mc.GetInstances();foreach (ManagementObject mo in moc){st = mo["UserName"].ToString();}moc = null;mc = null;return st;}catch{return "unknow";}finally{}}

//获取MAC地址:

string GetMacAddress()
{try{//获取网卡硬件地址string mac = "";ManagementClass mc = new ManagementClass("Win32_NetworkAdapterConfiguration");ManagementObjectCollection moc = mc.GetInstances();foreach (ManagementObject mo in moc){if ((bool)mo["IPEnabled"] == true){mac = mo["MacAddress"].ToString();break;}}moc = null;mc = null;return mac;}catch{return "unknow";}finally{}
}

//获取IP地址:

        /// <summary>/// 获取客户端内网IP地址/// </summary>/// <returns></returns>private static string getClientLocalIPAddress(){string localIP=null;try{IPHostEntry ipHost = System.Net.Dns.GetHostEntry(Dns.GetHostName());// Dns.Resolve(Dns.GetHostName()); ;IPAddress ipaddress = ipHost.AddressList[0];localIP = ipaddress.ToString();return "内网IP地址:"+localIP;}catch{return "内网IP地址:unknown";}finally{ }}/// <summary>/// 获得客户端外网IP地址/// </summary>/// <returns>IP地址</returns>public static string getClientInternetIPAddress(){string internetAddress = "";try{using (WebClient webClient = new WebClient()){internetAddress = webClient.DownloadString("http://www.coridc.com/ip");//从外部网页获得IP地址//判断IP是否合法if (!System.Text.RegularExpressions.Regex.IsMatch(internetAddress, "[0-9]{1,3}\\.[0-9]{1,3}\\.[0-9]{1,3}\\.[0-9]{1,3}")){internetAddress = webClient.DownloadString("http://fw.qq.com/ipaddress");//从腾讯提供的API中获得IP地址}}return "外网IP地址:" + internetAddress;}catch{return "外网IP地址:unknown";}finally{}}

//获取硬盘ID:

string GetDiskID()
{try{String HDid = "";ManagementClass mc = new ManagementClass("Win32_DiskDrive");ManagementObjectCollection moc = mc.GetInstances();foreach (ManagementObject mo in moc){//HDid = (string)mo.Properties["Model"].ToString();HDid = (String)mo.Properties["Model"].Value.ToString();}moc = null;mc = null;return HDid;}catch{return "unknow";}finally{}
}

//获取CPUid:

string GetCpuID()
{try{//获取CPU序列号代码string cpuInfo = "";//cpu序列号ManagementClass mc = new ManagementClass("Win32_Processor");ManagementObjectCollection moc = mc.GetInstances();foreach (ManagementObject mo in moc){cpuInfo = mo.Properties["ProcessorId"].Value.ToString();}moc = null;mc = null;return cpuInfo;}catch{return "unknow";}finally{}
}

//系统名称:

string GetSystemType()
{try{string st = "";ManagementClass mc = new ManagementClass("Win32_ComputerSystem");ManagementObjectCollection moc = mc.GetInstances();foreach (ManagementObject mo in moc){st = mo["SystemType"].ToString();}moc = null;mc = null;return st;}catch{return "unknow";}finally{}
}

//获取物理内存:

string GetTotalPhysicalMemory()
{try{string st = "";ManagementClass mc = new ManagementClass("Win32_ComputerSystem");ManagementObjectCollection moc = mc.GetInstances();foreach (ManagementObject mo in moc){st = mo["TotalPhysicalMemory"].ToString();}moc = null;mc = null;return st;}catch{return "unknow";}finally{}
}

转载于:https://www.cnblogs.com/WinningTjz/p/3156493.html

c#中如何获取本机用户名、MAC地址、IP地址、硬盘ID、CPU序列号、系统名称、物理内存...相关推荐

  1. php 获取 客户端mac,如何在PHP中获取连接客户端的MAC和IP地址?

    服务器IP 您可以从$_SERVER['SERVER_ADDR']. 服务器MAC地址 对于MAC地址,可以解析netstat -ie在Linux中,或者ipconfig /all在Windows中. ...

  2. Python 获取本机或者服务器的 IP 地址

    获取计算机名称 hostname = socket.gethostname() 获取本机 IP ip = socket.gethostbyname(hostname) print(ip) 具体操作 i ...

  3. 在.NET中获取一台电脑名,IP地址及当前用户名

    在.NET中获取一台电脑名,IP地址及当前用户名是非常简单,以下是我常用的几种方法,如果大家还有其它好的方法,可以回复一起整理: 1. 在ASP.NET中专用属性: 获取服务器电脑名:Page.Ser ...

  4. qt准确获取本机mac和ip地址

    前言 公司服务器有多个mac地址,是用网上的代码获取时总是不准确,只能自己封装一下.qt通过QNetworkInterface类来获取网络接口的各种信息,我是通过解析QNetworkInterface ...

  5. C# Winform 中如何获取本机安装输入法,并设置为默认输出语言,如何打开搜狗输入法和手写板...

    C# Winform 中如何获取本机安装输入法,并设置为默认输出语言,如何打开搜狗输入法和手写板 原文:C# Winform 中如何获取本机安装输入法,并设置为默认输出语言,如何打开搜狗输入法和手写板 ...

  6. C#中ManagementClass获取本机信息

    C# 提供了ManagementClass类来获取本机的一些基本信息,比如CPU的个数,CPU的频率,网卡的MAC,内存的大小,硬盘的大小等. 获取本机MAC地址: /// <summary&g ...

  7. mac系统访问群晖服务器地址,获取发现访问 U-NAS 系统管理中心 IP 地址方法

    摘要:方法一:系统自带显示系统开机运行后,在访问U-NAS管理中心界面会出现访问地址IP具体位置再在 To visit U-NAS Management Center: 的下方,红色边框区域内为U-N ...

  8. 从dhcpd.lease中提取MAC和IP地址

    http://coolerfeng.blog.51cto.com/133059/58773 原创作品,允许转载,转载时请务必以超链接形式标明文章  原始出处 .作者信息和本声明.否则将追究法律责任. ...

  9. Java 获取本机的外网 IP

    原理 通过 HTTP 访问第三方获取 IP 的服务接口获取本机的外网 IP,例如: http://checkip.amazonaws.com/ https://ipv4.icanhazip.com/ ...

最新文章

  1. 通信 / CRC 校验
  2. 开源Easydarwin流媒体服务器Windows编译、配置、部署
  3. java launcher_JAR清单类路径不仅适用于Java Application Launcher
  4. html xsl xml文件,用XSL显示XML文件看起来像HTML
  5. 【Python笔记】AttributeError: module 'urllib3' has no attribute 'PoolManager'
  6. 星空连线html5,js canvas实现星空连线背景特效
  7. linux考试试题及答案填空题,Linux认证考试试题及答案(20210511022419)
  8. Jenkins详细教程
  9. Ansible tower 3.7.0-4自动化运维管理安装方法
  10. Qt实践2: 简易计算器
  11. 螺钉 螺母 硬币三种物体的识别
  12. 注册表修复工具+强制卸载工具
  13. uni-app -- 小程序添加激励视频(字节-抖音小程序)
  14. Codeforces Round #622 C2 - Skyscrapers
  15. MATLAB的MCC命令
  16. 北京第一年-OpenGL-7 egl wgl glx agl glew window display surface context rendertarget glfw都是什么?
  17. Duplicate keys detected: ‘gggggg‘. This may cause an update error.的解决办法
  18. 【最新】香港出入境政策+自动签注+口岸通关时间【更新2023.2.7】
  19. ISP 和IAP 原理与区别
  20. html页面回退,HTML5小结

热门文章

  1. vue3引入百度地图API组件的办法:
  2. 微信公众号开发入门 --验证消息来自微信服务器 (java)
  3. Android开发 语音识别技术之科大讯飞语音识别(二) — 语音合成
  4. 基于JSP的台球厅会员管理系统设计与实现
  5. 东芝打印机报故障维修CD40
  6. 前端实现在邮件内图片添加超链接的问题
  7. HDU 5468 Puzzled Elena 莫比乌斯反演
  8. 如何在Windows 10上创建和设置虚拟硬盘
  9. shiro 自定义标签
  10. qt dependant doesn not exist错误的解决方法