Windows XP +のJava、C#、またはCのいずれかで利用可能なワイヤレスネットワーク(SSID)のリストを見つけるために使用できるツールキット/パッケージがありますか?任意のサンプルコードをいただければ幸いです。Java、C#、および/またはCでワイヤレスネットワーク(SSID)のリストを見つける方法は?
10
A
答えて
10
C#の場合は、Windows XP SP2以降で提供されているNative Wifi APIのラッパーであるManaged Wifi APIを参照してください。
このコードはテストされていませんが、Managed Wifi APIのサンプルコードでは、使用可能なSSIDが一覧表示されます。
WlanClient client = new WlanClient();
foreach (WlanClient.WlanInterface wlanIface in client.Interfaces)
{
// Lists all available networks
Wlan.WlanAvailableNetwork[] networks = wlanIface.GetAvailableNetworkList(0);
foreach (Wlan.WlanAvailableNetwork network in networks)
{
Console.WriteLine("Found network with SSID {0}.", GetStringForSSID(network.dot11Ssid));
}
}
static string GetStringForSSID(Wlan.Dot11Ssid ssid)
{
return Encoding.ASCII.GetString(ssid.SSID, 0, (int) ssid.SSIDLength);
}
0
さて、あなたは私がジャンTourrilhesさん(http://www.hpl.hp.com/personal/Jean_Tourrilhes/Linux/Tools.html)でLinux用の無線ツールを提案しますLinuxの場合、そのOSを指定しませんでした。 iwlist()コマンドは、使用可能なネットワークに関する多くの情報を表示します。ソースコードはC言語で書かれています。別の方法として、C言語でlibpcapを使用してビーコンフレームをキャプチャし、そこからSSIDを抽出する(モニタモードのみ)独自のコードを記述します。私はスニッフィングコードをまだテストしていないので、ここには貼り付けませんが、それはかなり簡単です。
1
ArrayList<String>ssids=new ArrayList<String>();
ArrayList<String>signals=new ArrayList<String>();
ProcessBuilder builder = new ProcessBuilder(
"cmd.exe", "/c", "netsh wlan show all");
builder.redirectErrorStream(true);
Process p = builder.start();
BufferedReader r = new BufferedReader(new InputStreamReader(p.getInputStream()));
String line;
while (true) {
line = r.readLine();
if (line.contains("SSID")||line.contains("Signal")){
if(!line.contains("BSSID"))
if(line.contains("SSID")&&!line.contains("name")&&!line.contains("SSIDs"))
{
line=line.substring(8);
ssids.add(line);
}
if(line.contains("Signal"))
{
line=line.substring(30);
signals.add(line);
}
if(signals.size()==7)
{
break;
}
}
}
for (int i=1;i<ssids.size();i++)
{
System.out.println("SSID name == "+ssids.get(i)+" and its signal == "+signals.get(i) );
}
+0
私たちはこの方法以外は何もしていないようです –
関連する問題
- 1. win7x64マシンでC、C++、Fortranのコンパイラを見つける方法は?
- 2. C/C++/JavaのDICOMおよびFFTライブラリ
- 3. C++プロジェクトで再帰関数名リストを見つける方法
- 4. Cでブレークポイントを見つける方法#?
- 5. LDおよびMAFが関心のある別のリストにマッチしたSNPのリストを見つける方法
- 6. C/C++でデバイスのマウントポイントを見つける方法はありますか?
- 7. C#の:私のC#のアプリで2および/または3つのワード
- 8. ベルカーブガウスアルゴリズム(Pythonおよび/またはC#)
- 9. C++およびまたはブール
- 10. CプログラムでsetuidのユーザーのUIDを見つける方法は?
- 11. C++で未知のウィンドウのハンドルを見つける方法は?
- 12. C#でDataGridViewCellの背景色を見つける方法は?
- 13. C++でファイルポインタの位置を見つける方法は?
- 14. C++ソースコードでクラスのインスタンスを見つける方法は?
- 15. C#でバイト[]を圧縮(および解凍)する方法は?
- 16. AppveyorでMS C/C++コンパイラを見つける方法
- 17. C#で注文保存サブシーケンスを見つける方法は?
- 18. Androidおよび/またはiOS用のネイティブYoutubeアプリのユーザーエージェントを見つける
- 19. JavaおよびC++のFacebookサポート
- 20. JavaおよびObjective-Cのゲーム用リアルタイムゲームネットワーキングライブラリ
- 21. websocketフレームをエンコードおよびデコードするためのCまたはC++ライブラリ
- 22. JavaおよびC++は値渡しで参照渡しする
- 23. Javaクラス、関数、およびJavadocを持たないメンバーを見つける
- 24. CおよびC++で1LLまたは2LLとは何ですか?
- 25. Cで10^18までの完全な数字を見つける方法は?
- 26. C#セレニウムのドライバではいけない要素を見つける方法
- 27. Objective-CおよびCリファレンスヘルプ
- 28. C#ディクショナリで最高の値を持つキーを見つける方法は?
- 29. Windows NETSHコマンドで隠れたワイヤレスネットワーク(SSIDなし)に接続するには?
- 30. Cでタップアダプタのブリッジデバイス名を見つける方法はありますか?
Windows XP +を指定する質問が更新されました。 –