다음을 통해 공유


WlanRegisterDeviceServiceNotification 함수(wlanapi.h)

관리자 권한 또는 User-Mode 드라이버 프레임워크(UMDF) 드라이버가 있는 사용자 모드 클라이언트가 관심 있는 디바이스 서비스에 해당하는 원치 않는 알림을 등록할 수 있습니다.

구문

DWORD WlanRegisterDeviceServiceNotification(
  HANDLE                               hClientHandle,
  const PWLAN_DEVICE_SERVICE_GUID_LIST pDevSvcGuidList
);

매개 변수

hClientHandle

형식: HANDLE

WlanOpenHandle 함수에 대한 이전 호출에서 얻은 클라이언트의 세션 핸들입니다.

pDevSvcGuidList

형식: CONST PWLAN_DEVICE_SERVICE_GUID_LIST

알림을 받는 데 관심이 있는 디바이스 서비스 GUID를 나타내는 상수 WLAN_DEVICE_SERVICE_GUID_LIST 구조에 대한 선택적 포인터입니다. 구조체의 dwIndex 멤버는 해당 dwNumberOfItems 멤버의 값보다 작은 값을 가져야 합니다. 그렇지 않으면 액세스 위반이 발생할 수 있습니다. 이 API를 호출할 때마다 이전 디바이스 서비스 목록이 새 디바이스 서비스 목록으로 대체됩니다.

등록을 취소하려면 pDevSvcGuidListnullptr로 설정하거나 멤버가 0으로 설정된 WLAN_DEVICE_SERVICE_GUID_LIST 구조 dwNumberOfItems 체에 포인터를 전달합니다.

반환 값

형식: HRESULT

함수가 성공하면 반환 값이 ERROR_SUCCESS. 함수가 ERROR_ACCESS_DENIED 실패하면 호출자에게 이 작업을 수행할 수 있는 충분한 권한이 없습니다. 호출자는 관리자 권한이 있거나 UMDF 드라이버여야 합니다.

설명

WlanRegisterDeviceServiceNotification 함수는 WLAN 디바이스 서비스에 대한 기존 네이티브 Wi-Fi API에 대한 확장입니다.

클라이언트 애플리케이션은 이 함수를 호출하여 관심 있는 디바이스 서비스에 대한 알림을 등록 및 등록 취소합니다.

호출 애플리케이션이 호출 핸들을 닫거나(hClientHandle 매개 변수를 사용하여 WlanCloseHandle을 호출하여) 프로세스가 종료되는 경우 이 함수로 인한 디바이스 서비스에 대한 알림을 받을 등록이 자동으로 취소됩니다.

이러한 알림을 받으려면 클라이언트가 유효한 pDevSvcGuidList 매개 변수를 사용하여 이 함수를 호출해야 하며 WLAN_NOTIFICATION_SOURCE_DEVICE_SERVICE dwNotifSource인수(에 정의wlanapi.h됨)를 사용하여 WlanRegisterNotification 함수를 호출해야 합니다. 디바이스 서비스에 대한 알림을 받을 등록은 애플리케이션이 클라이언트 핸들을 닫거나(hClientHandle 매개 변수를 사용하여 WlanCloseHandle을 호출하여) 프로세스가 종료되거나 WlanRegisterDeviceServiceNotificationpDevSvcGuidList 인수nullptr를 사용하여 호출되거나, 그렇지 않으면 dwNumberOfItems가 0으로 설정될 때까지 적용됩니다.

운영 체제(OS)가 IHV(독립 하드웨어 공급업체) 드라이버로부터 디바이스 서비스 알림을 수신하고 클라이언트가 WlanRegisterDeviceServiceNotification을 사용하여 이러한 알림에 등록한 경우 클라이언트는 WlanRegisterNotification에 대한 호출을 통해 등록한 WLAN_NOTIFICATION_CALLBACK 통해 알림을 받습니다. 이 콜백은 클라이언트가 받은 모든 알림에 대해 호출됩니다(모든 알림에 대해 별도의 버퍼 포함).

콜백 함수(즉, 데이터 멤버)가 수신한 WLAN_NOTIFICATION_DATA 구조의 NotificationSource 멤버가 WLAN_NOTIFICATION_SOURCE_DEVICE_SERVICE 설정됩니다. 이 알림과 연결된 데이터 Blob, 디바이스 서비스 GUID 및 opcode는 WLAN_NOTIFICATION_DATApData 멤버에 있으며, 이 멤버는 WLAN_DEVICE_SERVICE_NOTIFICATION_DATA 형식의 구조를 가리킵니다.

참고

WLAN 서비스 또는 OS는 클라이언트가 등록하는 디바이스 서비스 GUID가 IHV 드라이버에서 실제로 지원되는지 여부를 확인하기 위해 검사 않습니다. 필요한 경우 WlanGetSupportedDeviceServices API를 사용하여 지원되는 디바이스 서비스를 쿼리하는 것은 클라이언트의 입니다.

요구 사항

요구 사항
지원되는 최소 클라이언트 Windows 10 빌드 20348
지원되는 최소 서버 Windows 10 빌드 20348
머리글 wlanapi.h