다음을 통해 공유


FwpmProviderSubscribeChanges0 함수(fwpmu.h)

FwpmProviderSubscribeChanges0 함수는 특정 공급자의 변경 내용에 대한 알림 배달을 요청하는 데 사용됩니다.

구문

DWORD FwpmProviderSubscribeChanges0(
  [in]           HANDLE                            engineHandle,
  [in, optional] const FWPM_PROVIDER_SUBSCRIPTION0 *subscription,
  [in]           FWPM_PROVIDER_CHANGE_CALLBACK0    callback,
  [in, optional] void                              *context,
  [out]          HANDLE                            *changeHandle
);

매개 변수

[in] engineHandle

형식: HANDLE

필터 엔진에 대한 열린 세션에 대한 핸들입니다. FwpmEngineOpen0을 호출하여 필터 엔진에 대한 세션을 엽니다.

[in, optional] subscription

형식: FWPM_PROVIDER_SUBSCRIPTION0*

배달할 알림입니다.

[in] callback

형식: FWPM_PROVIDER_CHANGE_CALLBACK0

알림을 배달할 준비가 되면 호출될 함수 포인터입니다.

[in, optional] context

형식: void*

선택적 컨텍스트 포인터입니다. 이 포인터는 변경 내용의 세부 정보와 함께 콜백 함수에 전달됩니다.

[out] changeHandle

형식: HANDLE*

새로 만든 구독에 대한 핸들입니다.

반환 값

형식:DWORD

반환 코드/값 설명
ERROR_SUCCESS
0
구독이 성공적으로 만들어졌습니다.
FWP_E_* 오류 코드
0x80320001 — 0x80320039
WFP(Windows 필터링 플랫폼) 관련 오류입니다. 자세한 내용은 WFP 오류 코드를 참조하세요.
RPC_* 오류 코드
0x80010001 — 0x80010122
원격 또는 로컬 방화벽 엔진과 통신하지 못했습니다.

설명

구독자는 구독하는 데 사용되는 것과 동일한 세션 핸들을 사용하여 변경한 내용에 대한 알림을 받지 않습니다. 이는 구독자가 변경한 내용을 이미 알고 있기 때문에 다른 사용자가 변경한 내용만 볼 필요가 있기 때문입니다.

이 함수는 트랜잭션 내에서 호출할 수 없습니다. FWP_E_TXN_IN_PROGRESS 실패합니다. 트랜잭션에 대한 자세한 내용은 개체 관리를 참조하세요.

호출자는 공급자의 컨테이너 에 FWPM_ACTRL_SUBSCRIBE 액세스 하고 공급자에 대한 액세스를 FWPM_ACTRL_READ 합니다. 구독자는 FWPM_ACTRL_READ 액세스 권한이 있는 공급자에 대해서만 알림을 받습니다. 자세한 내용은 Access Control 참조하세요.

FwpmProviderSubscribeChanges0 은 FwpmProviderSubscribeChanges의 특정 구현입니다. 자세한 내용은 WFP Version-Independent 이름 및 특정 버전의 Windows 대상 지정 을 참조하세요.

요구 사항

요구 사항
지원되는 최소 클라이언트 Windows Vista [데스크톱 앱만 해당]
지원되는 최소 서버 Windows Server 2008 [데스크톱 앱만 해당]
대상 플랫폼 Windows
헤더 fwpmu.h
라이브러리 Fwpuclnt.lib
DLL Fwpuclnt.dll

추가 정보

FWPM_PROVIDER_CHANGE_CALLBACK0

FWPM_PROVIDER_SUBSCRIPTION0