IoGetLowerDeviceObject 함수(ntifs.h)

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

구문

PDEVICE_OBJECT IoGetLowerDeviceObject(
  [in] PDEVICE_OBJECT DeviceObject
);

매개 변수

[in] DeviceObject

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

반환 값

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

설명

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

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

  • 다음 하위 수준 드라이버는 로드되지 않습니다.
  • 다음 하위 수준 드라이버는 현재 언로드, 제거 또는 삭제되고 있습니다.
  • DeviceObject가 가리키는 디바이스 개체는 드라이버 스택에서 가장 낮은 디바이스 개체입니다.
파일 시스템 필터 드라이버는 일반적으로 IoGetLowerDeviceObject 를 사용하여 지정된 파일 시스템 디바이스 개체 위에 연결된 필터 드라이버 스택에 이미 연결되어 있는지 여부를 확인합니다. 먼저 필터는 IoGetAttachedDeviceReference 를 호출하여 스택에서 가장 상위 디바이스 개체에 대한 포인터를 가져옵니다. 그런 다음 , IoGetLowerDeviceObject 를 반복적으로 호출하여 드라이버 스택을 걷고 각 디바이스 개체를 확인하여 개체가 필터 드라이버에 속하는지 확인합니다.

IoGetLowerDeviceObject 는 다음 하위 수준 디바이스 개체에 대한 참조 수를 증분합니다. 따라서 IoGetLowerDeviceObject 에 대한 모든 성공적인 호출은 후속 호출 ObDereferenceObject와 일치해야 합니다.

요구 사항

   
지원되는 최소 클라이언트 이 루틴은 Windows 2000 SP4(서비스 팩 4) 및 Windows XP 이상용 업데이트 롤업에서 사용할 수 있습니다.
대상 플랫폼 유니버설
헤더 ntifs.h(Ntifs.h 포함)
라이브러리 NtosKrnl.lib
DLL NtosKrnl.exe
IRQL <= DISPATCH_LEVEL

참고 항목

IoGetAttachedDevice

IoGetAttachedDeviceReference

ObDereferenceObject