[ad_1]
最近,我遇到了一个问题。我可以在Windows中使用Native WiFi API获取RSSI,但是RSSI数据波动很大,并且当我移动计算机时几乎不会改变。 有人说Native WiFi API在返回给我们时已经平均了RSSI数据,所以我想直接从NIC卡获取RSSI。我在互联网上搜索了很多,但没有得到任何有用的信息。我不知道如何使用哪个函数可以实现这个,请帮帮我!谢谢~
我尝试过的:
我在互联网上搜索了很多,但没有得到任何有用的信息。
我使用了 DeviceIoControl 函数,但它总是返回 false。
解决方案1
这看起来非常像是针对不同卡以不同方式查询的信息,即 – 我希望它依赖于硬件。 如果是这种情况,魔法就发生在设备驱动程序内部。
您对单个设备进行逆向工程的耐心和能力如何?
硬盘不需要驱动程序,因此它们可以使用约定的接口,您可以通过 DeviceIoControl 访问该接口。 我几乎没有希望(好吧,基本上是 0 – 但也没有更多的知识!)这将被证明是一个痛苦、乏味的过程 – 一个可能仍然没有希望取得成果的希望。
作为练习,尝试下载每个 NRF24L01 和 a7105 2.4GHz 芯片组的数据表。 几年前我与他们合作过,根据记忆,他们有类似但完全不同的方法来检索 RSSI 值。 您将看到与 NIC 相同的情况,但您对如何根据需要驱动正确的线路高/低并监听响应知之甚少(如果有的话),因为您无法直接连接到 2.4 GHz 芯片组,而必须通过板上的 MCU。 (因此提出逆向工程建议)
a7105: [^]
NRF24L01: [^]
解决方案2
对于 Windows 10 设备,您拥有: WiFi可用网络.网络RssiIn分贝毫瓦| networkRssiInDecibelMilliwatts 属性 – Windows 应用程序开发[^]
在:
WiFiAvailableNetwork 类 – Windows 应用程序开发[^]
这里有一个 Win10 sdk 示例的示例: Windows-universal-samples/Samples/WiFiScan at master · Microsoft/Windows-universal-samples · GitHub[^]
在此下载完整套件:
Windows-universal-samples,通用 Windows 平台的 API 示例,下载Windows-universal-samples的源码_GitHub_酷徒[^]
最近的一篇文章展示了如何构建 wifi 扫描仪: 现代应用程序 – 在 UWP 中构建 Wi-Fi 扫描仪[^]
[ad_2]
コメント