public Wlan.WlanBssEntryN[] GetNetworkBssList(string ssid, bool securityEnabled) { // Create SSID struct Wlan.Dot11Ssid dSsid = new Wlan.Dot11Ssid(); byte[] ssidTotalBytes = new byte[0x20]; byte[] ssidBytes = Encoding.ASCII.GetBytes(ssid); Buffer.BlockCopy(ssidBytes,0,ssidTotalBytes,0,ssidBytes.Length > ssidTotalBytes.Length ? ssidTotalBytes.Length : ssidBytes.Length); dSsid.SSID = ssidTotalBytes; dSsid.SSIDLength = (uint)ssidBytes.Length; return GetNetworkBssList(dSsid, Wlan.Dot11BssType.Infrastructure, securityEnabled); }
public void Connect(Wlan.WlanConnectionMode connectionMode, Wlan.Dot11BssType bssType, Wlan.Dot11Ssid ssid, Wlan.WlanConnectionFlags flags) { Wlan.WlanConnectionParameters parameters2 = new Wlan.WlanConnectionParameters { wlanConnectionMode = connectionMode, dot11SsidPtr = Marshal.AllocHGlobal(Marshal.SizeOf(ssid)), dot11BssType = bssType, flags = flags }; Wlan.WlanConnectionParameters connectionParams = parameters2; this.Connect(connectionParams); Marshal.StructureToPtr(ssid, connectionParams.dot11SsidPtr, false); Marshal.DestroyStructure(connectionParams.dot11SsidPtr, ssid.GetType()); Marshal.FreeHGlobal(connectionParams.dot11SsidPtr); }