我已经确定的IPv4无线接口的本地机器上下面的代码NetworkInterface.NetworkInterfaceType决定无线接口以太网类型在Windows 8
private List<IPAddressInformation> GetWifiIPAddresses()
{
var list = new List<IPAddressInformation>();
var networkInterfaces = NetworkInterface.GetAllNetworkInterfaces();
foreach (var networkInterface in networkInterfaces)
{
if (networkInterface.NetworkInterfaceType == NetworkInterfaceType.Wireless80211)
{
var interfaceAddressList = networkInterface.GetIPProperties().UnicastAddresses;
list.AddRange(interfaceAddressList.Where(interfaceIp => interfaceIp.Address.AddressFamily == AddressFamily.InterNetwork));
}
}
return list;
}
一切就像一个魅力在Windows 7中,但在Windows 8中我的WLAN接口被确定为以太网适配器。 (NetworkInterfaceType == NetworkInterfaceType.Ethernet代替NetworkInterfaceType.Wireless80211)
这里是我的WLAN
一个IPCONFIG屏幕,但它是一个无线适配器,在Windows 7 IPCONFIG显示它作为一个无线接口。
任何线索我该如何解决它?它是驱动程序问题还是Windows 8规范? 如何确定本地机器上的WLAN IP地址?
谢谢!
编辑:
正是因为Hyper-V虚拟交换机。 Hyper-V虚拟交换机包含真正的物理适配器,因此.NET无法将其确定为WiFi适配器。
当我从我的身体无线适配器删除在“Hyper-V虚拟交换机管理器”切换到vEthernet它工作正常,就像在Windows 7
但是,打开虚拟交换机可能是确定正确的IP进行的大问题实际的物理设备。
我有WP7应用程序发送文件到PC,在客户端我需要显示用户他的WiFi IP地址,所以他可以建立连接从手机和通过WiFi传输所需的文件。 – 2013-03-01 15:40:48