0

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関数とコールバック関数を使用して接続を確認します。接続すると、次の問題が発生します。

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 操作が失敗した理由を識別する WLAN_REASON_CODE データ型の値を指します。

そのため、この問題が発生したときに pData を確認したところ、次の理由が返されました。

wlan_notification_acm_scan_fail "操作は成功しました。"

しかし、ネットワークは接続されていません。よろしくお願いします。

4

2 に答える 2

0

WlanSetProfile() を呼び出すときに、WlanProfileFlags を AllUser として設定していることを確認してください。

于 2021-09-14T08:05:07.363 に答える