다음을 통해 공유


IoGetAttachedDeviceReference 함수(wdm.h)

IoGetAttachedDeviceReference 루틴은 드라이버 스택에서 가장 높은 수준의 디바이스 개체에 대한 포인터를 반환하고 해당 개체에 대한 참조 수를 증분합니다.

구문

PDEVICE_OBJECT IoGetAttachedDeviceReference(
  [in] PDEVICE_OBJECT DeviceObject
);

매개 변수

[in] DeviceObject

맨 위에 연결된 디바이스 개체가 검색되는 디바이스 개체에 대한 포인터입니다.

반환 값

IoGetAttachedDeviceReference 는 개체에 대한 참조 수를 증분한 후 연결된 디바이스 개체 스택에서 가장 높은 수준의 디바이스 개체에 대한 포인터를 반환합니다.

설명

DeviceObject의 디바이스 개체에 연결된 디바이스 개체가 없으면 DeviceObject 및 반환된 포인터가 같습니다.

디바이스 드라이버 작성기는 이 호출에 필요한 모든 작업을 완료했을 때 이 루틴에서 반환된 디바이스 개체 포인터를 사용하여 ObDereferenceObject 를 호출하는지 확인해야 합니다. 이렇게 하지 않으면 시스템이 미해결 참조 횟수 때문에 디바이스 개체를 해제하거나 삭제하지 못하게 됩니다.

요구 사항

요구 사항
지원되는 최소 클라이언트 Windows 2000부터 사용할 수 있습니다.
대상 플랫폼 유니버설
헤더 wdm.h(Wdm.h, Ntddk.h, Ntifs.h 포함)
라이브러리 NtosKrnl.lib
DLL NtosKrnl.exe
IRQL <= DISPATCH_LEVEL
DDI 규정 준수 규칙 DanglingDeviceObjectReference(wdm), HwStorPortProhibitedDDDIs(storport)

추가 정보

ObDereferenceObject