当前位置: 首页 > 编程笔记 >

C# 获得本地通用网卡信息的示例代码

柴砚文
2023-03-14
本文向大家介绍C# 获得本地通用网卡信息的示例代码,包括了C# 获得本地通用网卡信息的示例代码的使用技巧和注意事项,需要的朋友参考一下

可以通过使用命名空间下的ManagementObjectSearcher类及其方法Get来获得通用网卡信息。

其中,最重要的是ManagementObjectSearcher构造函数的输入参数,可以传入以下的QueryString。

SELECT * FROM Win32_NetworkAdapterConfiguration

以下的例子为将本地网卡的配置信息写入一个文件并保存,代码如下:

using System.IO;
using System.Linq;
using System.Management;

namespace ConsoleApp
{
  class Program
  {
    static void Main(string[] args)
    {
      ManagementObjectSearcher managementObjectSearcher = new ManagementObjectSearcher("SELECT * FROM Win32_NetworkAdapterConfiguration") ;
      ManagementObjectCollection managementObjectCollection = managementObjectSearcher.Get();
      StreamWriter writer = new StreamWriter("result.csv");
      bool isFirstRow = true;
      foreach (ManagementObject managementObject in managementObjectCollection)
      {
        string header = string.Empty;
        string content = string.Empty;
        string separator1 = ",";
        string separator2 = " | ";
        foreach (var item in managementObject.Properties)
        {
          if (isFirstRow)
          {
            header = $"{header}{separator1}{item.Name}";
          }
          string valueTemp = string.Empty;
          if (item.Value != null)
          {
            if (item.Value is string[] || item.Value is ushort[])
            {
              string[] valuesStrTemp;
              if(item.Value is ushort[])
                valuesStrTemp = ((ushort[])item.Value).Select(x => x.ToString()).ToArray();
              else
                valuesStrTemp = item.Value as string[];

              for (int i = 0; i < valuesStrTemp.Length; i++)
              {
                valueTemp = $"{valueTemp}{separator2}{valuesStrTemp[i]}";
              }
              if(valuesStrTemp.Length != 0)
                valueTemp = valueTemp.Remove(0, separator2.Length);
            }
            else
              valueTemp = item.Value.ToString();
          }
          content = $"{content}{separator1}{valueTemp}";
        }
        if (isFirstRow)
        {
          header = header.Remove(0, separator1.Length);
          writer.WriteLine(header);
          isFirstRow = false;
        }
        content = content.Remove(0, separator1.Length);
        writer.WriteLine(content);
      }
      writer.Close();
    }
  }
}

运行结果如下:

以上就是C# 获得本地通用网卡信息的示例代码的详细内容,更多关于c# 获得网卡信息的资料请关注小牛知识库其它相关文章!

 类似资料:
  • 本文向大家介绍C++获得本机所有网卡的IP和MAC地址信息的实现方法,包括了C++获得本机所有网卡的IP和MAC地址信息的实现方法的使用技巧和注意事项,需要的朋友参考一下 一台机器上可能不只有一个网卡,但每一个网卡只有一个MAC地址,而每一个网卡可能配置有多个IP地址;如平常的笔记本电脑中,就会有无线网卡和有线网卡(网线接口)两种;因此,如果要获得本机所有网卡的IP和MAC地址信息,则必须顺序获得

  • 本节给出一个实例来演示如何通过getAvailableLocales方法获得当前JDK支持的所有本地信息。在本例中使用了Locale类的getLanguage、getCountry、getDisplayLanguage、getDisplayCountry、getDisplayName方法来获得Locale对象表示的本地信息。 例子 : 获得JDK支持的所有本地信息 AllLocale类负责输出JD

  • 本文向大家介绍python 获取计算机的网卡信息,包括了python 获取计算机的网卡信息的使用技巧和注意事项,需要的朋友参考一下 0. 前言 正常情况下,如果想要查看电脑的网卡IP地址或是MAC地址,直接通过界面找到网卡进行查看就有了,亦或是通过命令如linux的ifconfig得到IP等信息,那么本节教大家如何通过python的方式获取网卡的IP/MAC信息。 1. 测试环境及关键代码解释 1

  • 由于客户端浏览器和服务端进行交互是建立在TCP连接基础上的,因此,有时在服务端就需要知道客户端的一些网络连接信息,因此,ServletRequest接口定义了若干可以获得网络连接信息的getter方法。通过这些方法,可以获得客户端和服务端的IP、端口以及访问协议等信息。 假设客户端的IP是192.168.18.10,服务器的IP是192.168.18.254,服务器主机名是webserver。并通

  • 本文向大家介绍C#的Socket实现UDP协议通信示例代码,包括了C#的Socket实现UDP协议通信示例代码的使用技巧和注意事项,需要的朋友参考一下 今天稍花化了一点时间,利用C#的Socket验证了UDP的通信,为接下来特地利用UDP做个分布式的通信仿真系统打下基础。众所周知,UDP 就是用户数据报协议,在互联网参考模型的第四层——传输层。与TCP协议同层,都是提供信息的传输服务,但与TCP最

  • 本文向大家介绍winform C#获得Mac地址,IP地址,子网掩码,默认网关的实例,包括了winform C#获得Mac地址,IP地址,子网掩码,默认网关的实例的使用技巧和注意事项,需要的朋友参考一下 1.  添加程序集 2.  引入命名空间 using System.Management; 3.  方法 以上这篇winform C#获得Mac地址,IP地址,子网掩码,默认网关的实例就是小编分享