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 미니 드라이버는 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