我正在开发云备份软件的过程中。该应用程序是使用C#开发的桌面应用程序。
如果计算机连接到3G网络以节省用户的成本,我需要添加一个选项以停止/暂停备份。
我似乎找不到有关如何实现这一目标的任何示例后者是我的主要关注点。
我尝试了一个测试应用程序来枚举网络:
Console.WriteLine("checking network interfacesn");
NetworkInterface[] interfaces = NetworkInterface.GetAllNetworkInterfaces();
foreach (var networkInterface in interfaces)
{
Console.WriteLine("Interface Detected");
Console.WriteLine("Description: "+networkInterface.Description);
Console.WriteLine("ID: " + networkInterface.Id);
Console.WriteLine("Name: " + networkInterface.Name);
Console.WriteLine("Interface Type: " + networkInterface.NetworkInterfaceType);
Console.WriteLine("Operational Status: " + networkInterface.OperationalStatus.ToString());
Console.WriteLine("Speed: " + networkInterface.Speed.ToString());
Console.WriteLine("Supports Multicast: " + networkInterface.SupportsMulticast.ToString());
Console.WriteLine("#########################################################n");
}
上面的代码将我的3G连接列为PPP,可以是ADSL或3G。我不确定是否可以使用其他选项或API
来区分我需要一种清晰的方法来区分这些网络,到目前为止,我还找不到这样做的方法。
有人可以帮忙吗?
使用本机WiFi函数获取WiFi接口(WlaneNumInterfaces)和移动宽带API获取3G接口(ImbninterFaceManager.getInterfaces)。较新的3G调制解调器应支持移动宽带API。