在我的 FireBreath 插件中,我正在尝试确定 Wifi SSID 和/或扫描可见的 Wifi 接入点。
在代码的 Windows 部分中,这需要从以下内容开始:
dwResult = WlanOpenHandle(dwMaxClient, NULL, &dwCurVersion, &hClient);
不幸的是,dwResult
总是返回:1062,翻译为“服务尚未启动”(通过FormatMessage()
)。
我尝试在主线程以及启动的 boost 线程中运行,如下所示:
boost::thread t(boost::bind(&LaasTechAPI::doSomethingTimeConsuming_thread, this, num, callback));
无论如何,错误 1062 是相同的。
(顺便说一句,我实现了线程方法,因为 a. Internet 搜索表明某种 ATL/MTL '公寓' 线程问题,并且 b. Wifi 扫描被认为是一种固有的缓慢异步努力,所以线程似乎一直都是必要的)
谁能告诉我如何解决这个 WlanOpenHandle 错误 1062 问题?
次要:
- 你能告诉我一种更可靠的方法来扫描 Windows 中本地接入点的 Wifi SSID、BSSID 和信号强度吗?
- 我还必须为 OS X 收集 Wifi 信息。因此,如果您知道用于 Wifi 扫描的 Mac 或多平台解决方案,请分享。
谢谢!