WdfObjectDereferenceActual 함수(wdfobject.h)
[KMDF 및 UMDF에 적용]
WdfObjectDereferenceActual 메서드는 지정된 프레임워크 개체에 대한 참조 수를 감소시키고 태그 값, 줄 번호 및 파일 이름을 참조에 할당합니다.
구문
void WdfObjectDereferenceActual(
[in] WDFOBJECT Handle,
[in, optional] PVOID Tag,
[in] LONG Line,
[in, optional] PCCH File
);
매개 변수
[in] Handle
프레임워크 개체에 대한 핸들입니다.
[in, optional] Tag
개체 참조를 식별하는 드라이버 정의 값입니다. 태그 값은 드라이버가 이전에 WdfObjectReferenceActual에 제공한 태그 값과 일치해야 합니다.
[in] Line
드라이버 원본 파일의 줄 번호를 나타내는 숫자 값입니다.
[in, optional] File
드라이버 소스 파일의 이름을 나타내는 null로 끝나는 상수 문자열에 대한 포인터입니다. 이 매개 변수는 선택 사항이며 NULL일 수 있습니다.
반환 값
없음
설명
드라이버가 잘못된 개체 핸들을 제공하는 경우 버그 검사 발생합니다.
개체의 참조 수가 0이 되면 WdfObjectDereferenceActual 이 반환되기 전에 개체가 삭제될 수 있습니다.
WdfObjectDereference 대신 WdfObjectDereferenceActual 또는 WdfObjectDereferenceWithTag를 호출하면 Microsoft 디버거에 추가 정보(태그 문자열, 줄 번호 및 파일 이름)가 제공됩니다. WdfObjectDereferenceActual 을 사용하면 드라이버가 줄 번호와 파일 이름을 지정할 수 있고 WdfObjectDereferenceWithTag 는 드라이버의 현재 줄 번호와 파일 이름을 사용합니다.
!wdftagtracker 디버거 확장명을 사용하여 태그, 줄 번호 및 파일 이름 값을 볼 수 있습니다. 디버거 확장은 태그 값을 포인터 및 일련의 문자로 표시합니다. 디버거 확장에 대한 자세한 내용은 KMDF 드라이버 디버깅을 참조하세요.
개체 참조 횟수 및 프레임워크 개체 계층 구조에 대한 정리 규칙에 대한 자세한 내용은 Framework 개체 수명 주기를 참조하세요.
예제
다음 코드 예제에서는 개체의 참조 수를 감소시키고 태그 값, 줄 번호 및 파일 이름을 참조에 할당합니다.
WdfObjectDereferenceActual(
object,
pTag,
line,
FILE_NAME
);
요구 사항
요구 사항 | 값 |
---|---|
대상 플랫폼 | 유니버설 |
최소 KMDF 버전 | 1.0 |
최소 UMDF 버전 | 2.0 |
머리글 | wdfobject.h(Wdf.h 포함) |
라이브러리 | Wdf01000.sys(KMDF); WUDFx02000.dll(UMDF) |
IRQL | <=DISPATCH_LEVEL |
DDI 규정 준수 규칙 | DriverCreate(kmdf) |