![](/img/trans.png)
[英]How to connect to a Wifi that requests for a network security key using Windows Native Wifi Functions?
[英]Connect to Enterprise WiFi on Windows issue
我在 Windows Server 2016 上配置了 Radius 服務器,我想使用我的應用程序連接到企業 WiFi 網絡。 我嘗試執行以下步驟:
使用WlanSetProfile設置沒有憑據的配置文件(我使用從 netsh 導入的配置文件並進行了一些修改)
然后使用我的用戶名和密碼將下面的 xml 配置文件設置為WlanSetProfileEapXmlUserData :
<?xml version="1.0" ?>
<EapHostUserCredentials xmlns="http://www.microsoft.com/provisioning/EapHostUserCredentials"
xmlns:eapCommon="http://www.microsoft.com/provisioning/EapCommon"
xmlns:baseEap="http://www.microsoft.com/provisioning/BaseEapMethodUserCredentials">
<EapMethod>
<eapCommon:Type>26</eapCommon:Type>
<eapCommon:AuthorId>0</eapCommon:AuthorId>
</EapMethod>
<Credentials xmlns:eapUser="http://www.microsoft.com/provisioning/EapUserPropertiesV1"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:baseEap="http://www.microsoft.com/provisioning/BaseEapUserPropertiesV1"
xmlns:MsPeap="http://www.microsoft.com/provisioning/MsPeapUserPropertiesV1"
xmlns:MsChapV2="http://www.microsoft.com/provisioning/MsChapV2UserPropertiesV1">
<baseEap:Eap>
<baseEap:Type>26</baseEap:Type>
<MsChapV2:EapType>
<MsChapV2:Username>test</MsChapV2:Username>
<MsChapV2:Password>test</MsChapV2:Password>
</MsChapV2:EapType>
</baseEap:Eap>
</Credentials>
</EapHostUserCredentials>
然后我使用WlanConnect function 和回調 function 來驗證連接。 連接時出現以下問題:
NotificationCode 返回代碼 8 (wlan_notification_acm_scan_fail),然后返回 11 (wlan_notification_acm_connection_attempt_fail)。
此外,來自 MS 文檔:
wlan_notification_acm_scan_fail:
對可連接網絡的掃描失敗。
WLAN_NOTIFICATION_DATA 結構的 pData 成員指向 WLAN_REASON_CODE 數據類型值,該值標識 WLAN 操作失敗的原因。
因此,我在出現此問題時檢查了 pData,它返回以下原因:
wlan_notification_acm_scan_fail "操作成功。"
但是網絡沒有連接。 在此先感謝您的幫助。
我已經解決了這個問題。 問題是因為 PerformServerValidation 設置為 true 並顯示通知對話框以驗證 Windows 上的證書,這就是它返回的原因:
wlan_notification_acm_scan_fail "操作成功。"
將 PerformServerValidation 設置為 false 修復了該問題(WlanSetProfile 函數)。
<PerformServerValidation xmlns=\"http://www.microsoft.com/provisioning/MsPeapConnectionPropertiesV2\">false</PerformServerValidation>
另外,對於 WlanSetProfileEapXmlUserData function 我提供了這個配置文件:
<?xml version="1.0" ?>
<EapHostUserCredentials
xmlns="http://www.microsoft.com/provisioning/EapHostUserCredentials"
xmlns:eapCommon="http://www.microsoft.com/provisioning/EapCommon"
xmlns:baseEap="http://www.microsoft.com/provisioning/BaseEapMethodUserCredentials">
<EapMethod>
<eapCommon:Type>25</eapCommon:Type>
<eapCommon:AuthorId>0</eapCommon:AuthorId>
</EapMethod>
<Credentials
xmlns:eapUser="http://www.microsoft.com/provisioning/EapUserPropertiesV1"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:baseEap="http://www.microsoft.com/provisioning/BaseEapUserPropertiesV1"
xmlns:MsPeap="http://www.microsoft.com/provisioning/MsPeapUserPropertiesV1"
xmlns:MsChapV2="http://www.microsoft.com/provisioning/MsChapV2UserPropertiesV1">
<baseEap:Eap>
<baseEap:Type>25</baseEap:Type>
<MsPeap:EapType>
<baseEap:Eap>
<baseEap:Type>26</baseEap:Type>
<MsChapV2:EapType>
<MsChapV2:Username>username</MsChapV2:Username>
<MsChapV2:Password>password</MsChapV2:Password>
</MsChapV2:EapType>
</baseEap:Eap>
</MsPeap:EapType>
</baseEap:Eap>
</Credentials>
</EapHostUserCredentials>
現在它成功連接到企業網絡。 問題已解決。 謝謝你。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.