次の方法で共有


WlanConnect 関数 (wlanapi.h)

WlanConnect 関数は、特定のネットワークへの接続を試みます。

構文

DWORD WlanConnect(
  [in] HANDLE                            hClientHandle,
  [in] const GUID                        *pInterfaceGuid,
  [in] const PWLAN_CONNECTION_PARAMETERS pConnectionParameters,
       PVOID                             pReserved
);

パラメーター

[in] hClientHandle

WlanOpenHandle 関数の以前の呼び出しによって返されるクライアントのセッション ハンドル。

[in] pInterfaceGuid

接続に使用するインターフェイスの GUID。

[in] pConnectionParameters

接続 の種類 、モード、ネットワーク プロファイル、ネットワークを識別する SSID、およびその他のパラメーターを指定するWLAN_CONNECTION_PARAMETERS構造体へのポインター。

WINDOWS XP SP3 とワイヤレス LAN API for Windows XP SP2: WLAN_CONNECTION_PARAMETERS メンバーにはいくつかの制約があります。 つまり、Windows Server 2008 および Windows Vista に対して有効な構造体は、SP3 の Windows XP では無効であるか、SP2 を使用する Windows XP の場合はワイヤレス LAN API が有効ではない可能性があります。 制約の一覧については、「 WLAN_CONNECTION_PARAMETERS」を参照してください。

pReserved

将来利用するために予約されています。 NULL に設定する必要があります。

戻り値

関数が成功した場合、戻り値は ERROR_SUCCESS です。

関数が失敗した場合、戻り値は次のいずれかの戻りコードになる可能性があります。

リターン コード 説明
ERROR_INVALID_PARAMETER
次のいずれかの条件が発生しました。
  • hClientHandleNULL または無効です。
  • pInterfaceGuidNULL です
  • pConnectionParametersNULL です
  • pConnectionParameters が指す構造体の dwFlags メンバーは、WLAN_CONNECTION_PARAMETERS ページで指定された値の 1 つに設定されていません。
  • pConnectionParameters が指す構造体の wlanConnectionMode メンバーは、wlan_connection_mode_discovery_secureまたはwlan_connection_mode_discovery_unsecureに設定され、同じ構造体の pDot11Ssid メンバーは NULL です
  • pConnectionParameters が指す構造体の wlanConnectionMode メンバーは wlan_connection_mode_discovery_secure または wlan_connection_mode_discovery_unsecure に設定され、同じ構造体の dot11BssType メンバーは dot11_BSS_type_any に設定されます。
  • pConnectionParameters が指す構造体の wlanConnectionMode メンバーがwlan_connection_mode_profileに設定され、同じ構造体の strProfile メンバーが NULL であるか、プロファイルの長さがWLAN_MAX_NAME_LENGTHを超えています。
  • pConnectionParameters が指す構造体の wlanConnectionMode メンバーがwlan_connection_mode_profileに設定され、同じ構造体の strProfile メンバーが NULL であるか、プロファイルの長さが 0 です。
  • pConnectionParameters が指す構造体の wlanConnectionMode メンバーは、wlan_connection_mode_invalidまたはwlan_connection_mode_autoに設定されます。
  • pConnectionParameters が指す構造体の dot11BssType メンバーは dot11_BSS_type_infrastructure に設定され、同じ構造体の dwFlags メンバーは WLAN_CONNECTION_ADHOC_JOIN_ONLY に設定されます。
  • pConnectionParameters が指す構造体の dot11BssType メンバーは dot11_BSS_type_independent に設定され、同じ構造体の dwFlags メンバーは WLAN_CONNECTION_HIDDEN_NETWORK に設定されます。
  • pConnectionParameters が指す構造体の dwFlags メンバーは WLAN_CONNECTION_IGNORE_PRIVACY_BIT に設定され、同じ構造体の wlanConnectionMode メンバーがwlan_connection_mode_temporary_profileに設定されていないか、同じ構造体の dot11BssType メンバーがdot11_BSS_type_independentに設定されています。
ERROR_INVALID_HANDLE
ハンドル テーブルにハンドル hClientHandle が見つかりませんでした。
RPC_STATUS
さまざまなエラー コード。
ERROR_ACCESS_DENIED
呼び出し元に十分なアクセス許可がありません。

解説

WlanConnect 関数は直ちにを返します。 接続が確立されたとき、またはそれ以上接続が試行されないときに通知を受け取るために、クライアントは WlanRegisterNotification を呼び出して通知に登録する必要があります。

pConnectionParameters が指すWLAN_CONNECTION_PARAMETERS構造体の strProfile メンバーは、接続に使用するプロファイルを指定します。 このプロファイルがすべてのユーザー プロファイルの場合、 WlanConnect 呼び出し元はプロファイルに対する実行アクセス権を持っている必要があります。 それ以外の場合、 WlanConnect 呼び出しは戻り値ERROR_ACCESS_DENIEDで失敗します。 すべてのユーザー プロファイルに対するアクセス許可は、 WlanSetProfile または WlanSaveTemporaryProfile を使用してプロファイルが作成または保存されるときに確立されます。

コマンド ラインで接続操作を実行するには、 netsh wlan connect コマンドを使用します。 詳細については、「 ワイヤレス ローカル エリア ネットワーク (wlan) の Netsh コマンド」を参照してください。

WINDOWS XP SP3 とワイヤレス LAN API for Windows XP SP2: WlanConnect を使用して優先ネットワーク リスト上のネットワークに接続することしかできません。 優先ネットワーク リストにネットワークを追加するには、 WlanSetProfile を呼び出します。

要件

   
サポートされている最小のクライアント Windows Vista、SP3 を使用した Windows XP [デスクトップ アプリのみ]
サポートされている最小のサーバー Windows Server 2008 [デスクトップ アプリのみ]
対象プラットフォーム Windows
ヘッダー wlanapi.h (Wlanapi.h を含む)
Library Wlanapi.lib
[DLL] Wlanapi.dll
再頒布可能パッケージ Sp2 を使用した Windows XP 用ワイヤレス LAN API

関連項目

WLAN_CONNECTION_PARAMETERS

WlanDisconnect