我们需要盘点大量 WinXX 机器,其中许多机器位于我们的场所之外,并使用我们自己的其他 wifi 网络。我们已经找到了简单的方法来检索我们想要的所有信息,除了连接的 wifi SSID 和安全模式(WEP/WPA/WPA2)...
在谷歌搜索了一段时间后,我找不到在非均匀环境中工作的方法。
相关环境数据:
- 机器可以运行 WinXP SP3 及以上版本
- 我们无法访问 AP(在许多情况下,它们由第三方提供给第二家公司 :(),但我们可以假设所有 SSID 都在广播
- 我们可以在管理员权限下在机器中运行程序。
- 我们不能告诉用户写下他们的配置:)
- 有些机器的 wifi 连接由 Windows 管理,而其他机器则可能由任何特定于硬件的管理器管理,例如英特尔 Pro/Set但我们对此没有可靠的数据
任何应用程序/代码/提示指针都可能有用。
答案1
您可能需要查看自 Windows XP SP3 起可用的 Win32 本机 WiFi API。我认为特定于硬件的连接管理器不应阻止此 API 正常工作,尽管这需要验证...
这里有一个很好的例子来说明如何检索有关 WiFi 配置文件的信息:http://www.codeproject.com/Articles/577445/Querying-Wireless-Settings-and-Decrypting-Wireless。
在更高版本的 Windows 上,另一种可能性是执行netsh wlan show interfaces
命令并解析其输出(尽管如果您必须处理安装了不同语言的操作系统的机器,这可能会很棘手),但不幸的是, Windows XPwlan
不支持网络上下文netsh
。如果您正在寻找 Windows XP 上的命令行解决方案,您可以尝试查看wlan.exe
赛门铁克提供的工具。