FwpmBfeStateSubscribeChanges0 함수(fwpmk.h)
FwpmBfeStateSubscribeChanges0 함수는 필터 엔진의 상태가 변경 될 때마다 호출되는 콜백 함수를 등록합니다.
경고
콜백 매개 변수에 전달한 콜백 함수에서 FwpmBfeStateUnsubscribeChanges0을 호출하지 마세요. 이렇게 하면 교착 상태가 발생할 수 있습니다.
구문
NTSTATUS FwpmBfeStateSubscribeChanges0(
[in, out] void *deviceObject,
[in] FWPM_SERVICE_STATE_CHANGE_CALLBACK0 callback,
[in, optional] void *context,
[out] HANDLE *changeHandle
);
매개 변수
[in, out] deviceObject
이전에 설명선 드라이버에서 만든 디바이스 개체에 대한 포인터입니다. 설명선 드라이버가 디바이스 개체를 만드는 방법에 대한 자세한 내용은 디바이스 개체 만들기를 참조하세요.
[in] callback
콜아웃 드라이버 제공 서비스 상태 변경 콜백 함수에 대한 포인터입니다. 필터 엔진은 필터 엔진의 상태가 변경되면 이 함수를 호출합니다.
서비스 상태 변경 콜백 함수는 다음과 같이 선언됩니다.
VOID NTAPI
callback(
IN OUT void *context,
IN FWPM_SERVICE_STATE newState
);
Context
설명선 드라이버가 FwpmBfeStateSubscribeChanges0 함수를 호출할 때 Context 매개 변수에 전달된 포인터입니다.
newState
필터 엔진의 새 상태입니다. 이 매개 변수에는 다음 값 중 하나가 포함됩니다.
FWPM_SERVICE_STOPPED
필터 엔진이 실행되고 있지 않습니다.
FWPM_SERVICE_START_PENDING
필터 엔진이 시작됩니다.
FWPM_SERVICE_STOP_PENDING
필터 엔진이 중지됩니다.
FWPM_SERVICE_RUNNING
필터 엔진이 실행 중입니다.
[in, optional] context
콜백 매개 변수에 지정된 콜백 함수에 전달되는 설명선 드라이버 제공 컨텍스트에 대한 포인터입니다.
[out] changeHandle
콜백 함수 등록과 연결된 핸들을 수신하는 변수에 대한 포인터입니다. 설명선 드라이버는 이 핸들을 FwpmBfeStateUnsubscribeChanges0 함수에 전달하여 콜백 함수를 등록 취소합니다.
반환 값
FwpmBfeStateSubscribeChanges0 함수는 다음 NTSTATUS 코드 중 하나를 반환합니다.
반환 코드 | 설명 |
---|---|
|
콜백 함수가 성공적으로 등록되었습니다. |
|
오류가 발생했습니다. |
설명
설명선 드라이버는 FwpmBfeStateSubscribeChanges0 함수를 호출하여 필터 엔진의 상태가 변경 될 때마다 호출되는 콜백 함수를 등록합니다.
예를 들어 설명선 드라이버는 필터 엔진이 현재 실행되고 있지 않으면 FwpmEngineOpen0 함수를 호출하여 필터 엔진에 대한 세션을 열 수 없습니다. 설명선 드라이버는 FWPM_SERVICE_RUNNING 알림을 사용하여 다른 Windows 필터링 플랫폼 관리 기능을 호출할 수 있도록 필터 엔진에 대한 세션을 열 수 있습니다. 마찬가지로, 콜아웃 드라이버는 필터 엔진이 중지되기 전에 FWPM_SERVICE_STOP_PENDING 알림을 사용하여 정리를 수행할 수 있습니다.
설명선 드라이버는 FwpmBfeStateGet0 함수를 호출하여 필터 엔진의 현재 상태를 검색하기 전에 FwpmBfeStateSubscribeChanges0 을 호출해야 합니다. FwpmBfeStateSubscribeChanges0 호출이 반환된 후 설명선 드라이버는 언제든지 FwpmBfeStateGet0을 호출할 수 있습니다.
콜아웃 드라이버는 를 호출하여 콜백 함수의 등록을 취소해야 합니다.설명선 드라이버를 언로드하기 전에 FwpmBfeStateUnsubscribeChanges0 함수입니다.
요구 사항
요구 사항 | 값 |
---|---|
지원되는 최소 클라이언트 | Windows Vista부터 사용할 수 있습니다. |
대상 플랫폼 | 유니버설 |
헤더 | fwpmk.h(Fwpmk.h 포함) |
라이브러리 | Fwpkclnt.lib |
IRQL | PASSIVE_LEVEL |
추가 정보
FwpmBfeStateUnsubscribeChanges0피드백
https://aka.ms/ContentUserFeedback
출시 예정: 2024년 내내 콘텐츠에 대한 피드백 메커니즘으로 GitHub 문제를 단계적으로 폐지하고 이를 새로운 피드백 시스템으로 바꿀 예정입니다. 자세한 내용은 다음을 참조하세요.다음에 대한 사용자 의견 제출 및 보기