WLAN_NOTIFICATION_CALLBACK
コールバックシグネチャ
void WLAN_NOTIFICATION_CALLBACK(
L2_NOTIFICATION_DATA* param0,
void* param1
);パラメーター
| フィールド | 型 | 説明 |
|---|---|---|
| param0 | L2_NOTIFICATION_DATA* | 通知情報を格納する WLAN_NOTIFICATION_DATA 構造体へのポインターです。 Windows XP with SP3 and Wireless LAN API for Windows XP with SP2: wlan_notification_acm_connection_complete と wlan_notification_acm_disconnected の通知のみが利用できます。 |
| param1 | void* | 通知を登録したときにクライアントが指定したコンテキスト情報へのポインターです。 |
公式ドキュメント
WLAN_NOTIFICATION_CALLBACK コールバック関数のプロトタイプは、通知コールバック関数の型を定義します。
解説(Remarks)
WlanRegisterNotification 関数は、アプリケーションがすべてのワイヤレス インターフェイス上の通知を登録および登録解除するために使用します。通知を登録する際、アプリケーションは WlanRegisterNotification 関数に渡す funcCallback パラメーターが指すコールバック関数を用意する必要があります。このコールバック関数のプロトタイプが WLAN_NOTIFICATION_CALLBACK です。このコールバック関数は、WlanRegisterNotification 関数に渡された dwNotifSource パラメーターで登録された通知を受け取ります。
コールバック関数は、最初のパラメーターとして、通知に関する詳細情報を格納する WLAN_NOTIFICATION_DATA 構造体へのポインターを受け取ります。また、2 番目のパラメーターとして、WlanRegisterNotification 関数の pCallbackContext パラメーターに渡されたクライアント コンテキストへのポインターを受け取ります。このクライアント コンテキストは、WlanRegisterNotification 関数にそのように渡された場合には NULL ポインターになることがあります。
いったん登録されると、クライアントが登録を解除するかハンドルを閉じるまで、通知が発生するたびにコールバック関数が呼び出されます。
通知の登録は、呼び出し元のアプリケーションが WlanRegisterNotification 関数で通知の登録に使用した呼び出しハンドルを閉じた場合 (hClientHandle パラメーターを指定して WlanCloseHandle を呼び出した場合)、またはプロセスが終了した場合に、自動的に解除されます。
コールバック関数が受け取る WLAN_NOTIFICATION_DATA 構造体の NotificationSource メンバーが WLAN_NOTIFICATION_SOURCE_ACM の場合、受け取った通知は自動構成モジュールの通知です。WLAN_NOTIFICATION_CALLBACK 関数に渡される WLAN_NOTIFICATION_DATA 構造体の NotificationCode メンバーによって、WLAN_NOTIFICATION_DATA 構造体の pData メンバーの解釈が決まります。これらの通知の詳細については、WLAN_NOTIFICATION_ACM 列挙型のリファレンスを参照してください。
コールバック関数が受け取る WLAN_NOTIFICATION_DATA 構造体の NotificationSource メンバーが WLAN_NOTIFICATION_SOURCE_HNWK の場合、受け取った通知はワイヤレス ホステッド ネットワークの通知です。これは Windows 7、および Wireless LAN Service がインストールされた Windows Server 2008 R2 でサポートされます。WLAN_NOTIFICATION_CALLBACK 関数に渡される WLAN_NOTIFICATION_DATA 構造体の NotificationCode メンバーによって、WLAN_NOTIFICATION_DATA 構造体の pData メンバーの解釈が決まります。これらの通知の詳細については、WLAN_HOSTED_NETWORK_NOTIFICATION_CODE 列挙型のリファレンスを参照してください。
コールバック関数が受け取る WLAN_NOTIFICATION_DATA 構造体の NotificationSource メンバーが WLAN_NOTIFICATION_SOURCE_IHV の場合、受け取った通知は独立系ハードウェア ベンダー (IHV) の通知です。WLAN_NOTIFICATION_CALLBACK 関数に渡される WLAN_NOTIFICATION_DATA 構造体の NotificationCode メンバーによって、WLAN_NOTIFICATION_DATA 構造体の pData メンバーの解釈が決まります。この内容は IHV 固有です。
コールバック関数が受け取る WLAN_NOTIFICATION_DATA 構造体の NotificationSource メンバーが WLAN_NOTIFICATION_SOURCE_ONEX の場合、受け取った通知は 802.1X モジュールの通知です。WLAN_NOTIFICATION_CALLBACK 関数に渡される WLAN_NOTIFICATION_DATA 構造体の NotificationCode メンバーによって、WLAN_NOTIFICATION_DATA 構造体の pData メンバーの解釈が決まります。これらの通知の詳細については、ONEX_NOTIFICATION_TYPE 列挙型のリファレンスを参照してください。
コールバック関数が受け取る WLAN_NOTIFICATION_DATA 構造体の NotificationSource メンバーが WLAN_NOTIFICATION_SOURCE_MSM の場合、受け取った通知はメディア固有モジュール (MSM) の通知です。WLAN_NOTIFICATION_CALLBACK 関数に渡される WLAN_NOTIFICATION_DATA 構造体の NotificationCode メンバーによって、WLAN_NOTIFICATION_DATA 構造体の pData メンバーの解釈が決まります。これらの通知の詳細については、WLAN_NOTIFICATION_MSM 列挙型のリファレンスを参照してください。
コールバック関数が受け取る WLAN_NOTIFICATION_DATA 構造体の NotificationSource メンバーが WLAN_NOTIFICATION_SOURCE_SECURITY の場合、受け取った通知はセキュリティ通知です。現在、WLAN_NOTIFICATION_SOURCE_SECURITY に対して定義されている通知はありません。
Windows XP with SP3 and Wireless LAN API for Windows XP with SP2: 通知は Netman サービスによって処理されます。Netman サービスが無効になっているか利用できない場合、通知は受け取れません。妥当な時間内に通知を受け取れない場合、アプリケーションはタイムアウトして現在のインターフェイスの状態を照会してください。
Microsoft 公式リファレンス: 英語 (en-us) · 日本語 (ja-jp) · 原文ソース (GitHub)