Arr*_*abi 6 c# networking wifi winforms 3g
我正在尝试检测我连接的网络连接类型.是WiFi还是3G?有没有办法使用c#win forms .net 2.0或4.0?
foreach (NetworkInterface adapter in adapters)
{
if (adapter.OperationalStatus == OperationalStatus.Up)
{
if (adapter.NetworkInterfaceType == NetworkInterfaceType.Wireless80211)
{
lblNetworkType.Text = "you are using WiFi";
break;
}
else if (adapter.NetworkInterfaceType == NetworkInterfaceType.Ppp)
{
lblNetworkType.Text = "you are using 3G or ADSL or Dialup";
break;
}
else if (adapter.NetworkInterfaceType == NetworkInterfaceType.Ethernet)
{
lblNetworkType.Text = "you are using Ethernet";
break;
}
}
}
Run Code Online (Sandbox Code Playgroud)
不幸的是,没有一种“巧妙”的方法可以做到这一点。3G 连接看起来与 ADSL 或拨号连接相同(网络类型为 PPP)。
如果你确定你只会使用 WiFi/3G,那么你可以检查GetAllNetworkInterfacesNetworkInterface
提供的类中的信息,如果接口类型是 PPP,则将其视为 3G。但正如我所提到的,这对于其他类型的调制解调器连接来说是相同的。
编辑:您可能会在设备名称或描述中找到“3G”、“HSPA”、“HSDPA”、“Dongle”。但这只是一个“合理的猜测”,而不是绝对确定的。
归档时间: |
|
查看次数: |
3169 次 |
最近记录: |