Wlan SSID i java/c ++

Indlæg af Hanne Mølgaard Plasc

Problem



Er der nogen måde jeg kan få WLAN-information f.e. SSID, Signalstyrke mv i Java eller C ++?


Jeg ved om wlanscan funktionen i C ++. Kan nogen give mig et eksempel på, hvordan man implementerer det?


Der er også en jwlanscan api til java, men det virker ikke for mig.


OS: Windows 7


Enhver hjælp ville blive værdsat. Tak!


EDIT:


        {
            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("");
            }


Indtil videre har jeg denne kode (jwlanscan api). Det returnerer ikke noget adgangspunkt.

Bedste reference


Efter nogle søgninger fik jeg svaret selv. :)


WLAN API for at få signal strengen


Denne C ++-kode viser alle de nødvendige wlan-oplysninger.

Andre referencer 1


Følgende postdetaljer hvordan du opretter WLAN-objekt og får adgang til den information, du har brug for


Sådan finder du en liste over trådløse netværk (SSID'er) i Java, C # og/eller 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 ); 
} 


UPDATE:


OK, min dårlige,


Jeg antager, at der ikke er nogen indfødte Java-api til WLAN-forbindelser. Kun måde at gøre det på er at gå igennem OS-indfødte api og få informationen.