다음을 통해 공유


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 열거형 형식의 다음 값 중 하나일 수 있습니다.

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

반환 값

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

설명

BDA 미니드라이버가 네트워크 공급자로부터 설정된 KSMETHODSETID_BdaChangeSync 메서드의KSMETHOD_BDA_GET_CHANGE_STATE 요청을 받은 후 BdaGetChangeState 함수를 호출하여 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