3

誰でもNICカード名を取得する方法を知っています

ipconfig/all を実行すると、これを取得できます

Ethernet adapter XC99HT:

   Connection-specific DNS Suffix  . : xx.xx.com
   Description . . . . . . . . . . . : HP NC382i DP Multifunction Gigabit Server
 Adapter
   Physical Address. . . . . . . . . : F4-CE-46-94-E8-B0
   DHCP Enabled. . . . . . . . . . . : No
   Autoconfiguration Enabled . . . . : Yes
   IPv4 Address. . . . . . . . . . . : 177.77.153.48(Preferred)
   Subnet Mask . . . . . . . . . . . : 255.255.255.0
   Default Gateway . . . . . . . . . : 177.77.153.1
   DNS Servers . . . . . . . . . . . : 177.77.124.129
                                       177.77.124.130
   Primary WINS Server . . . . . . . : 177.77.124.129
   Secondary WINS Server . . . . . . : 177.77.124.130
   NetBIOS over Tcpip. . . . . . . . : Enabled

イーサネット名「XC99HT」を使用/渡すだけで「HP NC382i DP Multifunction Gigabit Server Adapter」を取得したい

4

2 に答える 2

9

このようなものですか?

public static void ShowInterfaceSummary()

{

NetworkInterface[] interfaces = NetworkInterface.GetAllNetworkInterfaces();
foreach (NetworkInterface adapter in interfaces)
{                
    Console.WriteLine ("Name: {0}", adapter.Name);
    Console.WriteLine(adapter.Description);
    Console.WriteLine(String.Empty.PadLeft(adapter.Description.Length,'='));
    Console.WriteLine("  Interface type .......................... : {0}", adapter.NetworkInterfaceType);
    Console.WriteLine("  Operational status ...................... : {0}", 
        adapter.OperationalStatus);
    string versions ="";

    // Create a display string for the supported IP versions.
    if (adapter.Supports(NetworkInterfaceComponent.IPv4))
    {
         versions = "IPv4";
     }
    if (adapter.Supports(NetworkInterfaceComponent.IPv6))
    {
        if (versions.Length > 0)
        {
            versions += " ";
         }
        versions += "IPv6";
    }
    Console.WriteLine("  IP version .............................. : {0}", versions);
    Console.WriteLine();
}
Console.WriteLine();

}

于 2012-06-18T20:53:51.710 に答える
1

これをコード内で適切に行うには、おそらく WMI を使用することをお勧めします。WMI (Windows Management Intrumentation) は Windows 内の "メタデータベース" であり、デバイス レベルで行われているほぼすべての情報が含まれています。これには、.NET の System.Management 名前空間 (主に ManagementObjectSearcher クラス) を使用してアクセスします。SQL に似た構文を使用して WMI を検索します。すべてのアクティブなネットワーク アダプターを返す基本的なクエリを次に示します。

select * from Win32_NetworkAdapterConfiguration where IPEnabled = true

IPConfig (およびその他) を使用して表示できるものはほとんどすべて、結果の ManagementObjectCollection から利用できます。残念ながら、オブジェクトのどのフィールドに「XC99HT」というデータがあるかはわかりません。

于 2012-06-18T20:58:59.443 に答える