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.
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:
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.