다음을 통해 공유


BdaGetChangeState 함수(bdasup.h)

BdaGetChangeState 함수는 BDA 토폴로지의 현재 변경 상태를 반환합니다.

통사론

NTSTATUS BdaGetChangeState(
  [in]            PIRP              pIrp,
  [out, optional] PBDA_CHANGE_STATE pChangeState
);

매개 변수

[in] pIrp

현재 변경 상태를 가져오기 위한 요청에 대한 IRP를 가리킵니다. BDA 미니 드라이버는 KSMETHOD_BDA_GET_CHANGE_STATE 요청과 함께 이 IRP를 받습니다.

[out, optional] pChangeState

BDA 토폴로지의 현재 변경 상태를 받는 변수를 가리킵니다. BDA 변경 상태는 BDA_CHANGE_STATE 열거형 형식의 다음 값 중 하나일 수 있습니다.

묘사
BDA_CHANGES_COMPLETE BDA 토폴로지 변경이 완료되었습니다.
BDA_CHANGES_PENDING BDA 토폴로지 변경이 보류 중입니다.

반환 값

STATUS_SUCCESS 또는 적절한 오류 코드를 반환합니다.

발언

BDA 미니 드라이버는 BdaGetChangeState 함수를 호출하여 미니 드라이버가 네트워크 공급자로부터 설정된 KSMETHODSETID_BdaChangeSync 메서드 집합의 KSMETHOD_BDA_GET_CHANGE_STATE 요청을 받은 후 BDA 토폴로지의 현재 변경 상태를 검색합니다. BDA 미니 드라이버는 디스패치 및 필터 자동화 테이블을 정의하여 해당 미니 드라이버가 BdaGetChangeState 함수를 직접 디스패치하거나 내부 메서드(KStrMethodHandler)를 사용하여 이 요청을 가로채고 BdaGetChangeState 함수를 호출합니다. 예를 들어 이 요청을 가로채는 BDA 미니 드라이버는 전달된 IRP에서 BDA 필터에 대한 포인터를 가져올 수 있으므로 다음을 수행할 수 있습니다.

  • 보류 중인 토폴로지 변경 내용뿐만 아니라 필터의 보류 중인 변경 내용도 확인합니다.

  • BDA 토폴로지와 BDA 필터 모두에 대한 현재 변경 상태를 반환합니다.

자세한 내용은 Automation 테이블 정의 및 BDA 필터 속성 변경 참조하세요.

요구 사항

요구
대상 플랫폼 바탕 화면
헤더 bdasup.h(Bdasup.h 포함)
라이브러리 Bdasup.lib
IRQL PASSIVE_LEVEL

참고 항목

BDA_CHANGE_STATE

KSMETHODSETID_BdaChangeSync

KSMETHOD_BDA_GET_CHANGE_STATE

KStrMethodHandler