IoGetLowerDeviceObject 함수(ntifs.h)

IoGetLowerDeviceObject 루틴은 드라이버 스택의 다음 하위 수준 디바이스 개체에 대한 포인터를 반환합니다.

구문

PDEVICE_OBJECT IoGetLowerDeviceObject(
  [in] PDEVICE_OBJECT DeviceObject
);

매개 변수

[in] DeviceObject

다음 하위 수준 디바이스 개체를 반환할 스택의 디바이스 개체에 대한 포인터입니다.

반환 값

IoGetLowerDeviceObject 는 드라이버 스택의 다음 하위 수준 디바이스 개체에 대한 포인터를 반환합니다.

설명

파일 시스템 또는 디바이스 드라이버 스택의 디바이스 개체에 대한 포인터가 제공되면 IoGetLowerDeviceObject 는 스택의 다음 하위 수준 디바이스 개체에 대한 포인터를 반환합니다.

IoGetLowerDeviceObject 는 다음과 같은 경우 NULL을 반환합니다.

  • 다음 하위 수준 드라이버는 로드되지 않습니다.

  • 다음 하위 수준 드라이버는 현재 언로드, 제거 또는 삭제되고 있습니다.

  • DeviceObject가 가리키는 디바이스 개체는 드라이버 스택에서 가장 낮은 디바이스 개체입니다.

파일 시스템 필터 드라이버는 일반적으로 IoGetLowerDeviceObject 를 사용하여 지정된 파일 시스템 디바이스 개체 위에 연결된 필터 드라이버 스택에 이미 연결되어 있는지 여부를 확인합니다. 먼저 필터는 IoGetAttachedDeviceReference 를 호출하여 스택의 최상위 디바이스 개체에 대한 포인터를 가져옵니다. 그런 다음 , IoGetLowerDeviceObject 를 반복적으로 호출하여 드라이버 스택을 탐색하고 각 디바이스 개체에서 개체가 필터 드라이버에 속하는지 확인합니다.

IoGetLowerDeviceObject 가 있는 경우 다음 하위 수준 디바이스 개체에 대한 참조 수를 증분합니다. 따라서 NULL을 반환하지 않는 IoGetLowerDeviceObject 에 대한 모든 호출은 후속 호출 ObDereferenceObject와 일치해야 합니다.

요구 사항

요구 사항
지원되는 최소 클라이언트 Windows 2000 SP4 업데이트 롤업; Windows XP
대상 플랫폼 유니버설
헤더 ntifs.h(Ntifs.h 포함)
라이브러리 NtosKrnl.lib
DLL NtosKrnl.exe
IRQL <= DISPATCH_LEVEL

추가 정보

IoGetAttachedDevice

IoGetAttachedDeviceReference

ObDereferenceObject