【发布时间】:2013-10-07 23:39:29
【问题描述】:
您如何确定或检查当前网络连接的连接配置文件(如果有)?
具体来说,我需要确定当前连接是到私有网络还是公共网络,并从那里确定是打开还是关闭网络发现。
似乎可以通过 Windows.Networking.Connectivity.NetworkInformation.GetConnectionProfiles() 或 NetworkInformation.GetInternetConnectionProfile() 函数在 Windows 应用商店应用程序中轻松获得此信息,但这是必须在 Win 7 和 Server 2008 上运行的标准桌面应用程序以及 Win 8 和 Server 2012。
Enumerating the NICs 在机器上不是问题,但这并不能解决我的问题 - 我需要获取连接的属性,而不是物理设备。
.Net 框架有没有内置的方法来做到这一点?或者它可以用 WMI 完成吗?或者作为一种粗略的选择,可以通过调用netsh 命令来完成(尽管这似乎取决于dot3svc 和/或wlansvc 服务正在运行)?
【问题讨论】:
-
@JunWeiLee 谢谢,它没有直接帮助。这是一个使用 Managed Wifi API 的代码 sn-p,它包装了 Native Wifi API。
标签: c# networking network-programming