C#获取机器信息(IPV4.IPV6.MAC.硬盘信息,机器厂商/型号)「建议收藏」

C#获取机器信息(IPV4.IPV6.MAC.硬盘信息,机器厂商/型号)「建议收藏」把翻到的很多以前写的程序做个记录,记录学习过程,同时也方便以后查阅https://github.com/Yiomo/GetInfo该APP会获取部分机器信息并且在当前目录下生成一份TXT报告1.引用usingSystem;usingSystem.Collections.Specialized;usingSystem.IO;usingSyste

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE稳定放心使用

把翻到的很多以前写的程序做个记录,记录学习过程,同时也方便以后查阅

https://github.com/Yiomo/GetInfo

该APP会获取部分机器信息并且在当前目录下生成一份TXT报告

1.引用

using System;
using System.Collections.Specialized;
using System.IO;
using System.Management;
using System.Net;
using System.Net.Sockets;
using System.Windows;
using System.Windows.Input;
using System.Windows.Media;

2.控件

省略一堆textblock一类的控件,能输出就行

3.获取机器名称

            string machineName = Environment.MachineName;
            bl1.Text = machineName;

4.获取MAC地址

            try
                {

                    using (ManagementClass mc = new ManagementClass(“Win32_NetworkAdapterConfiguration”))
                    {

                        using (ManagementObjectCollection moc = mc.GetInstances())
                        {

                            string macAddress = “”;
                            foreach (ManagementObject mo in moc)
                            {

                                if ((bool)mo[“IPEnabled”] == true)
                                {

                                    macAddress = mo[“MacAddress”].ToString();
                                    break;
                                }
                            }
                        bl2.Text = macAddress;
                        }
                    }
                }
                catch
                {

                bl2.Text = “unknown”;
                }
                finally
                {

                }

5.判断32/64位系统

            bool is64OS = Environment.Is64BitOperatingSystem;
            if (is64OS == true)
                bl3.Text = “64 bits OS”;//64位
            else
                bl3.Text = “32 bits OS”;//32位

6.获取硬盘信息

            string HDSN = “”;
            ManagementClass cimobject = new ManagementClass(“Win32_DiskDrive”);
            ManagementObjectCollection moc1 = cimobject.GetInstances();
            foreach (ManagementObject mo in moc1)
            {

                HDSN = (string)mo.Properties[“Model”].Value;
            }
            ManagementClass mc1 = new ManagementClass(“Win32_PhysicalMedia”);
            ManagementObjectCollection moc2 = mc1.GetInstances();
            string HDID = “”;
            foreach (ManagementObject mo in moc2)
            {

                HDID = mo.Properties[“SerialNumber”].Value.ToString().Trim();
                break;
            }
            bl4.Text = HDSN;
            bl5.Text = HDID;

7.IPV4

        string[] GetLocalIpv4()
        {

            IPAddress[] localIPs;
            localIPs = Dns.GetHostAddresses(Dns.GetHostName());
            StringCollection IpCollection = new StringCollection();
            foreach (IPAddress ip in localIPs)
            {

                if (ip.AddressFamily == AddressFamily.InterNetwork)///AddressFamily.InterNetwork代表IPV4地址,不包含V6
                    IpCollection.Add(ip.ToString());
            }
            string[] IpArray = new string[IpCollection.Count];
            IpCollection.CopyTo(IpArray, 0);
            return IpArray;
        }

        void ShowIP()
        {
            foreach (string ip in GetLocalIpv4())
            {

                bl6.Text = ip.ToString();
            }
            return;
        }

        ShowIP();

8.IPV6

            string ip =  “”;
            IPAddress[] addressList = Dns.GetHostEntry(Dns.GetHostName()).AddressList;
            for (int i = 0; i < addressList.Length; i++)
            {

                ip = addressList[i].ToString();
            }
            bl7.Text = ip;

9. 获取厂商和机器型号(manufacturer)(model)

            ManagementClass mc2 = new ManagementClass(“Win32_ComputerSystem”);
            ManagementObjectCollection moc3 = mc2.GetInstances();

            if (moc3.Count != 0)
            {

                foreach (ManagementObject mo in mc2.GetInstances())
                {

                    bl1.Text =mo[“Manufacturer”].ToString();///制造厂商
                }
            }

            foreach (ManagementObject m in moc3)
            {

                PCV = m[“model”].ToString ();
            }
            bl2.Text = PCV;机器型号

/*********************//

C#获取机器信息(IPV4.IPV6.MAC.硬盘信息,机器厂商/型号)「建议收藏」C#获取机器信息(IPV4.IPV6.MAC.硬盘信息,机器厂商/型号)「建议收藏」

C#获取机器信息(IPV4.IPV6.MAC.硬盘信息,机器厂商/型号)「建议收藏」

C#获取机器信息(IPV4.IPV6.MAC.硬盘信息,机器厂商/型号)「建议收藏」

         

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/188751.html原文链接:https://javaforall.net

(0)
上一篇 2026年4月15日 下午6:22
下一篇 2026年4月15日 下午6:28


相关推荐

  • OpenClaw插件配置错误修复完全指南

    OpenClaw插件配置错误修复完全指南

    2026年3月13日
    2
  • UE4导入高度图

    UE4导入高度图UE4导入高度图查找高度图使用ps编辑图片打开虚幻引擎的地形编辑器查找高度图可以从百度直接搜索使用ps编辑图片下载下来之后图片是jpg格式的,虚幻引擎不能直接用需要使用ps编辑一下选择图像->勾选灰度和16位通道,注意:如果不勾选灰度,图片有颜色的话,ue生成地形可能出现为题;还有ue只支持16位通道,不要选择其他通道点击文件和储存为,之后出现一个弹窗,填写自己图片的名字,注意图片的格式只能是png和raw,其他格式ue不支持打开虚幻引擎的地形编辑器1.ue4.25的地形在模式

    2022年5月26日
    54
  • java8 lambda 将二维数组转换成list集合

    java8 lambda 将二维数组转换成list集合将二维数组int[][]转换成一个嵌套的List<List>的形式代码如下publicstaticList<List<Integer>>generate(intnumRows){int[][]ints=newint[numRows][numRows];for(inti=0;i<numRows;i++){for(intj=0;j<=i;j++){if

    2022年8月23日
    15
  • cuda安装步骤_cuda和cudnn是什么

    cuda安装步骤_cuda和cudnn是什么cuda9.0+cudnn7.0安装教程 1、下载cuda9.0下载链接:https://developer.nvidia.com/cuda-toolkit-archive 2、安装cuda安装cuda时,第一次会让设置临时解压目录,第二次会让设置安装目录;临时解压路径,建议默认即可,也可以自定义。安装结束后,临时解压文件夹会自动删除;安装目录,建议默认…

    2022年4月19日
    99
  • SQL参数化查询

    SQL参数化查询SQL参数化查询一、以往的防御方式以前对付这种漏洞的方式主要有三种:字符串检测:限定内容只能由英文、数字等常规字符,如果检查到用户输入有特殊字符,直接拒绝。但缺点是,系统中不可避免地会有些内容包含特殊字符,这时候总不能拒绝入库。字符串替换:把危险字符替换成其他字符,缺点是危险字符可能有很多,一一枚举替换相当麻烦,也可能有漏网之鱼。存储过程:把参数传到存储过程进行处理,但

    2022年6月20日
    199
  • R语言入门-安装R和Rstuido软件

    R语言入门-安装R和Rstuido软件安装R和Rstuido软件R语言是用于统计分析,图形表示和报告的编程语言和软件环境;Rstudio是编辑、运行R语言的最为理想的工具之一。1、官网下载R安装包  下载地址为:https://cran.r-project.org  进入链接,如下图所示,在页面顶部提供了三个下载链接,分别对应三种操作系统:Windows、Mac和Linux。请选择自己操作系统对应的链接,接下来我将以wi…

    2022年6月27日
    49

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号