質問: Windows10でタスクトレイに表示されるWifi強度に表示されるアイコンと同じシグナル値をnetsh wlanコマンド以外の方法で取得したいです。 作成中のデスクトップアプリケーション(C#)に組み込むことが目的です。 当方の推測では、タスクトレイに表示されるシグナル値はnetsh wlanコマンドの netsh wlan show interfaces に表示される「シグナル値」と連動しており、 76-100% 4本 51-75% 3本 26-50% 2本 0-25% 1本 と表示するように思えます。 現状はnetsh wlanコマンドを実行、「シグナル」以降の文字列を抜き取ることで対応しているのですが、この方法ですと、日本語以外の言語環境下では対応できません。 なお、WlanScan()実行後、WlanGetAvailableNetworkList()から、Wifi強度を取得する方法も試しましたが、タスクトレイに表示されるアイコン表示の値と連動していないようです。 ご存知の方、ご教授をお願いいたします。
回答: WlanScan 関数を呼ばずに、WlanGetAvailableNetworkList 関数で Wi-Fi 強度を取得した場合はどうですか?私の環境(Windows 10, x64)では、WlanGetAvailableNetworkList 関数で取得した現在接続中の Wi-Fi 強度は、netsh wlan show interfaces で表示される「シグナル」と同じ値となっているようでした。 「連動」というのは、リアルタイムで同じ値になるという意味でしょうか? 試したプログラムはこちらです。