亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關(guān)于我們
? 蟲蟲下載站

?? wlsample.cpp

?? VC++ WIFI
?? CPP
?? 第 1 頁 / 共 5 頁
字號:
/*++

Copyright (c) 2006 Microsoft Corporation

Module Name:

    wlsample.cpp

Abstract:

    Sample code for WLAN APIs

Date:
	11/08/2005  created
    08/22/2006  modified

Environment:

   User mode only

--*/
// define this flag for COM
#define _WIN32_DCOM

#include <windows.h>
#include <conio.h>
#include <objbase.h>
#include <rpcsal.h>
#include <objbase.h>
#include <msxml6.h>
#include <atlbase.h>
#include <iostream>
#include <iomanip>
// headers needed to use WLAN APIs 
#include <wlanapi.h>

using namespace std;

// get win32 error from HRESULT
#define WIN32_FROM_HRESULT(hr)           \
    (SUCCEEDED(hr) ? ERROR_SUCCESS :    \
        (HRESULT_FACILITY(hr) == FACILITY_WIN32 ? HRESULT_CODE(hr) : (hr)))


//
// Utility functions
//

// get interface state string
LPWSTR
GetInterfaceStateString(
    __in WLAN_INTERFACE_STATE wlanInterfaceState
)
{
    LPWSTR strRetCode;

    switch(wlanInterfaceState)
    {
        case wlan_interface_state_not_ready:
            strRetCode = L"\"not ready\"";
            break;
        case wlan_interface_state_connected:
            strRetCode = L"\"connected\"";
            break;
        case wlan_interface_state_ad_hoc_network_formed:
            strRetCode = L"\"ad hoc network formed\"";
            break;
        case wlan_interface_state_disconnecting:
            strRetCode = L"\"disconnecting\"";
            break;
        case wlan_interface_state_disconnected:
            strRetCode = L"\"disconnected\"";
            break;
        case wlan_interface_state_associating:
            strRetCode = L"\"associating\"";
            break;
        case wlan_interface_state_discovering:
            strRetCode = L"\"discovering\"";
            break;
        case wlan_interface_state_authenticating:
            strRetCode = L"\"authenticating\"";
            break;
        default:
            strRetCode = L"\"invalid interface state\"";
    }

    return strRetCode;
}

// get ACM notification string
LPWSTR
GetAcmNotificationString(
    __in DWORD acmNotif
)
{
    LPWSTR strRetCode;

    switch(acmNotif)
    {
        case wlan_notification_acm_autoconf_enabled:
            strRetCode = L"\"autoconf enabled\"";
            break;
        case wlan_notification_acm_autoconf_disabled:
            strRetCode = L"\"autoconf disabled\"";
            break;
        case wlan_notification_acm_background_scan_enabled:
            strRetCode = L"\"background scan enabled\"";
            break;
        case wlan_notification_acm_background_scan_disabled:
            strRetCode = L"\"background scan disabled\"";
            break;
        case wlan_notification_acm_power_setting_change:
            strRetCode = L"\"power setting change\"";
            break;
        case wlan_notification_acm_scan_complete:
            strRetCode = L"\"scan complete\"";
            break;
        case wlan_notification_acm_scan_fail:
            strRetCode = L"\"scan fail\"";
            break;
        case wlan_notification_acm_connection_start:
            strRetCode = L"\"connection start\"";
            break;
        case wlan_notification_acm_connection_complete:
            strRetCode = L"\"connection complete\"";
            break;
        case wlan_notification_acm_connection_attempt_fail:
            strRetCode = L"\"connection fail\"";
            break;
        case wlan_notification_acm_filter_list_change:
            strRetCode = L"\"filter list change\"";
            break;
        case wlan_notification_acm_interface_arrival:
            strRetCode = L"\"interface arrival\"";
            break;
        case wlan_notification_acm_interface_removal:
            strRetCode = L"\"interface removal\"";
            break;
        case wlan_notification_acm_profile_change:
            strRetCode = L"\"profile change\"";
            break;
        case wlan_notification_acm_profiles_exhausted:
            strRetCode = L"\"profiles exhausted\"";
            break;
        case wlan_notification_acm_network_not_available:
            strRetCode = L"\"network not available\"";
            break;
        case wlan_notification_acm_network_available:
            strRetCode = L"\"network available\"";
            break;
        case wlan_notification_acm_disconnecting:
            strRetCode = L"\"disconnecting\"";
            break;
        case wlan_notification_acm_disconnected:
            strRetCode = L"\"disconnected\"";
            break;
        case wlan_notification_acm_adhoc_network_state_change:
            strRetCode = L"\"ad hoc network state changes\"";
            break;
        default:
            strRetCode = L"\"unknown ACM notification\"";
    }

    return strRetCode;
}

// get MSMM notification string
LPWSTR
GetMsmNotificationString(
    __in DWORD msmNotif
)
{
    LPWSTR strRetCode;

    switch(msmNotif)
    {
        case wlan_notification_msm_associating:
            strRetCode = L"\"associating\"";
            break;
        case wlan_notification_msm_associated:
            strRetCode = L"\"associated\"";
            break;
        case wlan_notification_msm_authenticating:
            strRetCode = L"\"authenticating\"";
            break;
        case wlan_notification_msm_connected:
            strRetCode = L"\"connected\"";
            break;
        case wlan_notification_msm_roaming_start:
            strRetCode = L"\"roaming start\"";
            break;
        case wlan_notification_msm_roaming_end:
            strRetCode = L"\"roaming end\"";
            break;
        case wlan_notification_msm_radio_state_change:
            strRetCode = L"\"radio state change\"";
            break;
        case wlan_notification_msm_signal_quality_change:
            strRetCode = L"\"signal quality change\"";
            break;
        case wlan_notification_msm_disassociating:
            strRetCode = L"\"disassociating\"";
            break;
        case wlan_notification_msm_disconnected:
            strRetCode = L"\"disconnected\"";
            break;
        case wlan_notification_msm_peer_join:
            strRetCode = L"\"a peer joins the ad hoc network\"";
            break;
        case wlan_notification_msm_peer_leave:
            strRetCode = L"\"a peer leaves the ad hoc network\"";
            break;
        case wlan_notification_msm_adapter_removal:
            strRetCode = L"\"adapter is in a bad state\"";
            break;
        default:
            strRetCode = L"\"unknown MSM notification\"";
    }

    return strRetCode;
}

// get connection mode string
LPWSTR
GetConnectionModeString(
    __in WLAN_CONNECTION_MODE wlanConnMode
)
{
    LPWSTR strRetCode;

    switch(wlanConnMode)
    {
        case wlan_connection_mode_profile:
            strRetCode = L"\"manual connection with a profile\"";
            break;
        case wlan_connection_mode_temporary_profile:
            strRetCode = L"\"manual connection with a temporary profile\"";
            break;
        case wlan_connection_mode_discovery_secure:
            strRetCode = L"\"connection to a secure network without a profile\"";
            break;
        case wlan_connection_mode_discovery_unsecure:
            strRetCode = L"\"connection to an unsecure network without a profile\"";
            break;
        case wlan_connection_mode_auto:
            strRetCode = L"\"automatic connection with a profile\"";
            break;
        default:
            strRetCode = L"\"invalid connection mode\"";
    }

    return strRetCode;
}

// get PHY type string
LPWSTR 
GetPhyTypeString(
    __in ULONG uDot11PhyType
)
{
    LPWSTR strRetCode;

    switch(uDot11PhyType)
    {
        case dot11_phy_type_dsss:
            strRetCode = L"\"DSSS\"";
            break;
        case dot11_phy_type_erp:
            strRetCode = L"\"802.11g\"";
            break;
        case dot11_phy_type_fhss:
            strRetCode = L"\"FHSS\"";
            break;
        case dot11_phy_type_hrdsss:
            strRetCode = L"\"802.11b\"";
            break;
        case dot11_phy_type_irbaseband:
            strRetCode = L"\"IR-base band\"";
            break;
        case dot11_phy_type_ofdm:
            strRetCode = L"\"802.11a\"";
            break;
        case dot11_phy_type_any:
            strRetCode = L"\"any\"";
            break;
        default:
            strRetCode = L"\"Unknown PHY type\"";
    }

    return strRetCode;
}

// get BSS type string
LPWSTR 
GetBssTypeString(
    __in DOT11_BSS_TYPE dot11BssType
)
{
    LPWSTR strRetCode;

    switch(dot11BssType)
    {
        case dot11_BSS_type_infrastructure:
            strRetCode = L"\"Infrastructure\"";
            break;
        case dot11_BSS_type_independent:
            strRetCode = L"\"Ad hoc\"";
            break;
        case dot11_BSS_type_any:
            strRetCode = L"\"Any\"";
            break;
        default:
            strRetCode = L"\"Unknown BSS type\"";
    }

    return strRetCode;
}

// get radio state string
LPWSTR
GetRadioStateString(
    __in DOT11_RADIO_STATE radioState
)
{
    LPWSTR strRetCode;

    switch(radioState)
    {
        case dot11_radio_state_on:
            strRetCode = L"\"on\"";
            break;
        case dot11_radio_state_off:
            strRetCode = L"\"off\"";
            break;
        default:
            strRetCode = L"\"unknown state\"";
    }

    return strRetCode;
}


// get auth algorithm string
LPWSTR 
GetAuthAlgoString(
    __in DOT11_AUTH_ALGORITHM dot11AuthAlgo
)
{
    LPWSTR strRetCode = L"\"Unknown algorithm\"";

    switch(dot11AuthAlgo)
    {
        case DOT11_AUTH_ALGO_80211_OPEN:
            strRetCode = L"\"Open\"";
            break;
        case DOT11_AUTH_ALGO_80211_SHARED_KEY:
            strRetCode = L"\"Shared\"";
            break;
        case DOT11_AUTH_ALGO_WPA:
            strRetCode = L"\"WPA-Enterprise\"";
            break;
        case DOT11_AUTH_ALGO_WPA_PSK:
            strRetCode = L"\"WPA-Personal\"";
            break;
        case DOT11_AUTH_ALGO_WPA_NONE:
            strRetCode = L"\"WPA-NONE\"";
            break;
        case DOT11_AUTH_ALGO_RSNA:
            strRetCode = L"\"WPA2-Enterprise\"";
            break;
        case DOT11_AUTH_ALGO_RSNA_PSK:
            strRetCode = L"\"WPA2-Personal\"";
            break;
        default:
            if (dot11AuthAlgo & DOT11_AUTH_ALGO_IHV_START)
            {
                strRetCode = L"\"Vendor-specific algorithm\"";
            }
    }

    return strRetCode;
}

// get cipher algorithm string
LPWSTR 
GetCipherAlgoString(
    __in DOT11_CIPHER_ALGORITHM dot11CipherAlgo
)
{
    LPWSTR strRetCode = L"\"Unknown algorithm\"";

    switch(dot11CipherAlgo)
    {
        case DOT11_CIPHER_ALGO_NONE:
            strRetCode = L"\"None\"";
            break;
        case DOT11_CIPHER_ALGO_WEP40:
            strRetCode = L"\"WEP40\"";
            break;
        case DOT11_CIPHER_ALGO_TKIP:
            strRetCode = L"\"TKIP\"";
            break;
        case DOT11_CIPHER_ALGO_CCMP:
            strRetCode = L"\"AES\"";
            break;
        case DOT11_CIPHER_ALGO_WEP104:
            strRetCode = L"\"WEP104\"";
            break;
        case DOT11_CIPHER_ALGO_WPA_USE_GROUP:
            strRetCode = L"\"USE-GROUP\"";
            break;
        case DOT11_CIPHER_ALGO_WEP:
            strRetCode = L"\"WEP\"";
            break;
        default:
            if (dot11CipherAlgo & DOT11_CIPHER_ALGO_IHV_START)
            {
                strRetCode = L"\"Vendor-specific algorithm\"";
            }
    }

    return strRetCode;
}

// get SSID from the WCHAR string
DWORD
StringWToSsid(
    __in LPCWSTR strSsid, 
    __out PDOT11_SSID pSsid
)
{
    DWORD dwRetCode = ERROR_SUCCESS;
    BYTE pbSsid[DOT11_SSID_MAX_LENGTH + 1] = {0};

    if (strSsid == NULL || pSsid == NULL)
    {
        dwRetCode = ERROR_INVALID_PARAMETER;
    }
    else
    {
        pSsid->uSSIDLength = WideCharToMultiByte (CP_ACP,
                                                   0,
                                                   strSsid,
                                                   -1,
                                                   (LPSTR)pbSsid,
                                                   sizeof(pbSsid),
                                                   NULL,

?? 快捷鍵說明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
777午夜精品视频在线播放| 日本不卡不码高清免费观看| 成人一级片网址| 日本一区二区成人| 成人黄色av电影| 亚洲女子a中天字幕| 色婷婷综合在线| 亚洲成a人v欧美综合天堂下载| 欧美最猛性xxxxx直播| 亚洲午夜三级在线| 欧美一区二区国产| 国产精品99久久久| 亚洲黄色免费电影| 91精品午夜视频| 欧美成人艳星乳罩| 亚洲精品乱码久久久久久久久| 精品一区二区影视| 国产日韩亚洲欧美综合| 99久久精品情趣| 五月婷婷综合在线| 久久精品免费在线观看| 91免费视频大全| 久久精品国产精品亚洲红杏 | 国产一区999| 日本美女一区二区三区| 国产精品丝袜久久久久久app| 日本久久一区二区| 久久国产精品99精品国产| 国产精品进线69影院| 678五月天丁香亚洲综合网| 国产99一区视频免费| 亚洲高清视频的网址| 国产欧美在线观看一区| 欧美精品在线一区二区三区| 国产成人99久久亚洲综合精品| 一区二区高清免费观看影视大全 | 这里是久久伊人| 日韩一区欧美二区| 国产精品日日摸夜夜摸av| 欧美日韩中文另类| 成人性色生活片| 麻豆国产一区二区| 夜夜嗨av一区二区三区中文字幕 | 色视频欧美一区二区三区| 久久se这里有精品| 一区二区三区电影在线播| 国产亚洲精品中文字幕| 91麻豆精品国产91久久久资源速度| 成人美女在线观看| 狠狠色狠狠色综合系列| 亚洲一区二区3| 国产一区二区三区四| 亚洲国产美国国产综合一区二区| 国产午夜久久久久| 91麻豆精品国产自产在线| 欧美主播一区二区三区| 成人免费视频网站在线观看| 久久精品免视看| 亚洲三级在线免费| 日本电影亚洲天堂一区| 国产91丝袜在线播放0| 麻豆精品一区二区| 秋霞电影一区二区| 亚洲444eee在线观看| 亚洲日本在线天堂| 国产精品免费视频网站| 国产偷国产偷精品高清尤物| 日韩一区二区精品在线观看| 制服丝袜亚洲播放| 欧美日韩你懂得| 欧美三级中文字| 欧洲av一区二区嗯嗯嗯啊| 色拍拍在线精品视频8848| 91激情五月电影| 色综合久久久久久久| 色综合天天综合网天天狠天天 | 亚洲国产wwwccc36天堂| 1024成人网色www| 最新日韩av在线| 亚洲欧美日韩人成在线播放| 粉嫩绯色av一区二区在线观看| 蜜臀a∨国产成人精品| 国产成人鲁色资源国产91色综| 亚洲6080在线| 免费黄网站欧美| 久久机这里只有精品| 国内偷窥港台综合视频在线播放| 久久99国产精品久久| 国产精品资源在线观看| 成人自拍视频在线| 99国产麻豆精品| 欧美性猛交xxxx乱大交退制版 | 三级成人在线视频| 蜜桃精品在线观看| 国产一区二区三区四区在线观看| 国产成人啪免费观看软件| gogogo免费视频观看亚洲一| 一本色道亚洲精品aⅴ| 欧美三级电影在线观看| 日韩亚洲国产中文字幕欧美| 久久综合狠狠综合久久综合88| 91精品国产欧美一区二区成人| 日韩欧美国产三级| 中文字幕 久热精品 视频在线| 国产精品久久久久久久浪潮网站 | 91麻豆蜜桃一区二区三区| 在线观看av一区| 欧美片在线播放| 亚洲成人综合网站| 欧美视频精品在线观看| 日韩女优毛片在线| 国产精品福利在线播放| 成人app在线| 欧美性生活一区| 久久免费精品国产久精品久久久久 | 亚洲欧洲另类国产综合| 天天亚洲美女在线视频| 从欧美一区二区三区| 欧美日韩久久一区| 欧美激情综合在线| 午夜欧美大尺度福利影院在线看| 国产一区二区三区蝌蚪| 91高清在线观看| 精品久久久久久最新网址| 亚洲卡通欧美制服中文| 久久精品国产久精国产爱| 色婷婷亚洲婷婷| 久久综合狠狠综合久久激情 | 欧美色国产精品| 国产亚洲成年网址在线观看| 亚洲国产wwwccc36天堂| 成人污视频在线观看| 欧美一区二区视频在线观看2020| 中文字幕一区二区在线观看| 久久国产成人午夜av影院| 欧美影片第一页| 国产精品私人影院| 激情综合色综合久久| 精品婷婷伊人一区三区三| 国产欧美日韩精品一区| 麻豆视频一区二区| 欧美麻豆精品久久久久久| 成人免费在线视频观看| 欧美日韩国产综合视频在线观看| 亚洲国产电影在线观看| 精品一区二区三区免费观看| 欧美日韩一级片网站| 成人免费在线视频观看| 国产不卡高清在线观看视频| 日韩一区二区三区免费看| 亚洲1区2区3区4区| 欧美色图免费看| 亚洲乱码国产乱码精品精小说| 国产99久久久国产精品潘金网站| 欧美大片拔萝卜| 奇米色一区二区三区四区| 欧美日韩一区二区在线视频| 亚洲另类春色校园小说| 99re成人精品视频| ...xxx性欧美| 99在线精品一区二区三区| 国产人妖乱国产精品人妖| 国产一区二区三区四| 久久综合久色欧美综合狠狠| 麻豆成人久久精品二区三区红| 91精品国产手机| 视频一区二区欧美| 欧美肥胖老妇做爰| 天天色图综合网| 欧美一区二区三区白人| 日韩成人午夜电影| 日韩精品一区二区三区在线播放 | 在线观看日韩国产| 一区二区三区国产精华| 欧美性大战久久久久久久| 亚洲综合色婷婷| 欧美日韩国产免费一区二区| 日一区二区三区| 精品国产区一区| 国产乱码精品一区二区三| 久久久噜噜噜久久人人看| 国产999精品久久久久久绿帽| 中文字幕av一区二区三区高| 成人av网站免费| 亚洲一区自拍偷拍| 欧美欧美午夜aⅴ在线观看| 蜜臀av亚洲一区中文字幕| 26uuu色噜噜精品一区二区| 国产91在线观看丝袜| 亚洲视频网在线直播| 欧美视频一区二区| 久久国产日韩欧美精品| 国产三区在线成人av| 91尤物视频在线观看| 亚洲高清久久久| 欧美精品一区二区三| 99国产精品久久久久久久久久| 亚洲午夜视频在线| 2020国产精品自拍| 91在线观看下载|