如何以编程方式选择在.NET中连接到Internet的网卡

问题描述 投票:4回答:1

我想以编程方式选择连接到Internet的网卡。我需要它来监视通过卡的流量。这就是我用来获取实例名称的方法

var category = new PerformanceCounterCategory("Network Interface");
String[] instancenames = category.GetInstanceNames();

以及instancenames >>在我的机器上的外观

[0]    "6TO4 Adapter"    
[1]    "Internal"    
[2]    "isatap.{385049D5-5293-4E76-A072-9F7A15561418}"    
[3]    "Marvell Yukon 88E8056 PCI-E Gigabit Ethernet Controller"    
[4]    "isatap.{0CB9C3D2-0989-403A-B773-969229ED5074}"    
[5]    "Local Area Connection - Virtual Network"    
[6]    "Teredo Tunneling Pseudo-Interface"

我希望该解决方案功能强大并且可以在其他PC上使用,我也希望使用.NET。我找到了其他解决方案,但出于目的,它们似乎更复杂

  1. 使用C++ or WMI
  2. 解析netstat的输出
  3. 还有其他吗?

看到我已经提到了一些可用的解决方案。我在问是否还有其他更简单,更可靠的方法(即NOT

C ++,WMI或解析控制台应用程序输出)

我想以编程方式选择连接到Internet的网卡。我需要它来监视通过卡的流量。这就是我用来获取实例名称的方法...

.net networking performancecounter network-interface
1个回答
1
投票

我最终使用WMI和外部函数调用,没有找到更好的解决方案。如果有人感兴趣,这是我的代码。

© www.soinside.com 2019 - 2024. All rights reserved.