有什么方法可以获得WLAN信息f.e. java或C ++中的SSID,信号强度等?
我知道C ++中的wlanscan功能。谁能给我任何关于如何实现它的例子?
还有一个用于java的jwlanscan api,但它对我不起作用。
操作系统:Windows 7
任何帮助将不胜感激。谢谢!
修改
{
System.loadLibrary("wireless");
}
List list = getNetworkAdapterInfo();
if (list == null)
System.out.println("None Network Adapter.");
else
for (Iterator ite = list.iterator(); ite.hasNext(); )
{
NetworkAdapterInfo nic = (NetworkAdapterInfo)ite.next();
System.out.println(nic.toString());
List listap = getWirelessApInfo(nic.getName());
if (listap == null) {
System.out.println("None Access Point.");
}
else {
System.out.println("Access Point:");
for (Iterator ite1 = listap.iterator(); ite1.hasNext(); )
{
WirelessApInfo ap = (WirelessApInfo)ite1.next();
System.out.println(ap.toString());
}
}
System.out.println("");
}
到目前为止,我有这个代码(jwlanscan api)。它不会返回任何接入点。
答案 0 :(得分:1)
答案 1 :(得分:0)
以下文章详细介绍了如何创建WLAN对象并访问所需信息
How to find a list of wireless networks (SSID's) in Java, C#, and/or C?
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 );
}
<强>更新强>
好的,我的坏,
我猜wlan连接没有本机java api。唯一的方法是通过操作系统本机API并获取信息。