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 |