java / c ++中的Wlan SSID

时间:2012-03-14 09:58:27

标签: java c++ windows native wlan

有什么方法可以获得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)。它不会返回任何接入点。

2 个答案:

答案 0 :(得分:1)

经过一番搜索,我自己得到了答案。 :)

WLAN API for getting signal strenth

此C ++代码显示所有必需的wlan信息。

答案 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并获取信息。