• 首页 首页 icon
  • 工具库 工具库 icon
    • IP查询 IP查询 icon
  • 内容库 内容库 icon
    • 快讯库 快讯库 icon
    • 精品库 精品库 icon
    • 问答库 问答库 icon
  • 更多 更多 icon
    • 服务条款 服务条款 icon

C#连接到WiFi网络,无线托管API

用户头像
it1352
帮助1

问题说明

我想知道是否可以连接到wifi网络与管理无线API?

i was wondering if it is possible to connect to a wifi network with the Managed Wifi API?

正确答案

#1

基本上,是的

也许你应该花几分钟搜索。从托管无线API的CodePlex页:

Maybe you should spend a few minutes searching. From Managed Wifi API codeplex page:

库使用原生API无线...

The library uses the Native Wifi API, ...

所以要本地无线API:的 MSDN

So going to Native Wifi API: MSDN

从无线网络连接或断开。见WlanConnect和WlanDisconnect

Connect to or disconnect from a wireless network. See WlanConnect and WlanDisconnect.

和此外,在托管无线API <的源代码A HREF =HTTP:// managedwifi。 codeplex.com/SourceControl/latest#WlanApi.cs相对=nofollow> WlanApi.cs :

And furthermore, in the source code of Managed Wifi API WlanApi.cs:

/// <summary>
/// Requests a connection (association) to the specified wireless network.
/// </summary>
/// <remarks>
/// The method returns immediately. Progress is reported through the <see cref="WlanNotification"/> event.
/// </remarks>
public void Connect(Wlan.WlanConnectionMode connectionMode, Wlan.Dot11BssType bssType, string profile)
{
    Wlan.WlanConnectionParameters connectionParams = new Wlan.WlanConnectionParameters();
    connectionParams.wlanConnectionMode = connectionMode;
    connectionParams.profile = profile;
    connectionParams.dot11BssType = bssType;
    connectionParams.flags = 0;
    Connect(connectionParams);
}

和网站的独特样本是做什么的! 样品

And the unique sample of the website is doing it! Sample

static void Main( string[] args )
{
    WlanClient client = new WlanClient();
    foreach ( WlanClient.WlanInterface wlanIface in client.Interfaces )
    {
        // Lists all networks with WEP security
        Wlan.WlanAvailableNetwork[] networks = wlanIface.GetAvailableNetworkList( 0 );
        foreach ( Wlan.WlanAvailableNetwork network in networks )
        {
            if ( network.dot11DefaultCipherAlgorithm == Wlan.Dot11CipherAlgorithm.WEP )
            {
                Console.WriteLine( "Found WEP network with SSID {0}.", GetStringForSSID(network.dot11Ssid));
            }
        }

        // Retrieves XML configurations of existing profiles.
        // This can assist you in constructing your own XML configuration
        // (that is, it will give you an example to follow).
        foreach ( Wlan.WlanProfileInfo profileInfo in wlanIface.GetProfiles() )
        {
            string name = profileInfo.profileName; // this is typically the network's SSID
            string xml = wlanIface.GetProfileXml( profileInfo.profileName );
        }

        // Connects to a known network with WEP security
        string profileName = "Cheesecake"; // this is also the SSID
        string mac = "52544131303235572D454137443638";
        string key = "hello";
        string profileXml = string.Format("<?xml version=\"1.0\"?><WLANProfile xmlns=\"http://www.microsoft.com/networking/WLAN/profile/v1\"><name>{0}</name><SSIDConfig><SSID><hex>{1}</hex><name>{0}</name></SSID></SSIDConfig><connectionType>ESS</connectionType><MSM><security><authEncryption><authentication>open</authentication><encryption>WEP</encryption><useOneX>false</useOneX></authEncryption><sharedKey><keyType>networkKey</keyType><protected>false</protected><keyMaterial>{2}</keyMaterial></sharedKey><keyIndex>0</keyIndex></security></MSM></WLANProfile>", profileName, mac, key);
        wlanIface.SetProfile( Wlan.WlanProfileFlags.AllUser, profileXml, true );
        wlanIface.Connect( Wlan.WlanConnectionMode.Profile, Wlan.Dot11BssType.Any, profileName );
    }
}

有一个好的一天!

这篇好文章是转载于:学新通技术网

  • 版权申明: 本站部分内容来自互联网,仅供学习及演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,请提供相关证据及您的身份证明,我们将在收到邮件后48小时内删除。
  • 本站站名: 学新通技术网
  • 本文地址: /reply/detail/tanhcfjjgj
系列文章
更多 icon
同类精品
更多 icon
继续加载