| 

.NET C# Java Javascript Exception

4
Ich will mit C# (zur Not VB.NET) rausfinden, welche Netzwerkadapter vorhanden und aktiviert sind. Das geht vermutlich mit P/Invoke, aber ich finde dazu nichts.
18.07.2009
Solid 73 2 4
2 Antworten
4
Schau dir mal die Klasse System.Net.NetworkInformation.NetworkInterface an. P/Invoke ist nicht nötig (Gott sei dank).
19.07.2009
nilz 592 1 2 8
1
Hier siehst du, wie du alle Network Adapter, die auf dem jeweiligen Rechner vorhanden sind auslesen kannst:

NetworkInterface() nics = NetworkInterface.GetAllNetworkInterfaces(); // NetworkInterface muss eigentlich mit eckigen Klammern geschrieben werden, die sind hier nur nicht zulässig.


So kannst du dann anschließend für jede Netzwerkkarte die entsprechenden Informationen ausgeben lassen, die dann entsprechend in adapter stehen:

Console.WriteLine("Anzahl an Netzwerkkarten : {0}", nics.Length);
foreach (NetworkInterface adapter in nics)
{
IPInterfaceProperties properties = adapter.GetIPProperties();
Console.WriteLine();
Console.WriteLine(adapter.Description);
Console.WriteLine(String.Empty.PadLeft(adapter.Description.Length,'='));
Console.WriteLine("Interface Typ: {0}", adapter.NetworkInterfaceType);
Console.WriteLine("Physikalische Adresse: {0}",
adapter.GetPhysicalAddress().ToString());
Console.WriteLine("Betriebsstatus: {0}",
adapter.OperationalStatus);
}


Um deine Aufgabenstellung nun abzuarbeiten, müsstest du adapter.OperationalStatus nur jeweils abfragen. Daraus lässt sich dann schließen, welche Karte aktiv bzw. inaktiv ist.
08.09.2009
Dustin Klein 2,9k 2 9

Stelle deine .net-Frage jetzt!
TOP TECHNOLOGIES CONSULTING GmbH