2013-10-29 56 views
10

到目前爲止,我能夠使用QNetworkConfigurationManager :: allConfigurations()掃描所有可用的wifi,但是它們每個的QNetworkConfiguration數據都沒有wifi信號強度。你能指出我如何獲得這些數據嗎?謝謝!如何使用Qt獲取wifi信號強度?

+2

的平臺,你定位? – fadedreamz

+0

目標OS = Windows 8.我在Visual Studio 2010中使用Qt 4.8.4。 – aaa

+3

我認爲這需要本機代碼。 –

回答

2

我不知道你甚至可以在普通桌面上這樣做(我的意思是使用Qt)。 Qt只是沒有與設備的通用接口來獲得這樣的東西。我不確定你使用的操作系統是什麼,但是最適合你的是與操作系統連接並從中獲取信息或通過驅動程序直接與設備通話。這兩種方法都很難,尤其是因爲你需要文檔,而且:

  • 對於第一種方法,通過驅動程序連接 - 除非信號實力是常見的許多驅動程序的方式報道,這將只能用於特定的驅動程序。
  • 對於第二種方法,通過系統進行鏈接 - Linux發行版之間可能會有細微的差異,可能會導致您無法在應用程序之間移植它們。 Windows也是一樣的Linux,沒有保證(我甚至會說「方式」,但我不確定是這樣......)兩個系統都使用這些相同的方法來報告用戶的信號強度。

無論您決定做什麼,都可以使用標準的OS功能來完成目標。例如在Windows中,您可以使用WlanGetAvailableNetworkList()。至於我記得它會提供一些所謂IRSSI這是直接的信號強度指示器:)

享受:)

2

您可以使用QProcess中,然後運行命令行命令來掃描WiFi網絡。使用正則表達式來解析包含wifi網絡所有細節的命令行輸出。

如果您使用的是Linux,則命令是「iwlist掃描」

+0

現在它是'iw wlan0 scan' :-)這就是我正在測試Qt中的WLAN卡。 – yegorich

相關問題