C#検出NICとネットワーク統計

3474 ワード

using System;
using System.Collections.Generic;
using System.Net.NetworkInformation;

public class MyClass
{
    public static void Main()
    {
        //Host Info
        IPGlobalProperties  ipProp = IPGlobalProperties.GetIPGlobalProperties();
        string hostInfo = 
            string.Format("Host Name:{0}
Domain Name:{1}

",ipProp.HostName,ipProp.DomainName); //statistics IPGlobalStatistics ipStat = ipProp.GetIPv4GlobalStatistics(); TcpConnectionInformation[] tcpConns = ipProp.GetActiveTcpConnections(); string stat=""; foreach(TcpConnectionInformation info in tcpConns) stat += string.Format("localhost:{0}\t{1}:{2}\tstate:{3}", info.LocalEndPoint.Port, info.RemoteEndPoint.Address,info.RemoteEndPoint.Port, info.State); //Network Interface string niInfo=""; NetworkInterface[] nis = NetworkInterface.GetAllNetworkInterfaces(); foreach(NetworkInterface ni in nis) niInfo += string.Format("

Name:{0}
Status:{1}
Speed:{2}
MAC:{3}
", ni.Name,ni.OperationalStatus,ni.Speed,ni.GetPhysicalAddress()); System.Windows.Forms.MessageBox.Show(hostInfo + niInfo); System.Windows.Forms.MessageBox.Show(stat); Console.ReadKey(); } }