ZwMakeTemporaryObject 함수(wdm.h)
ZwMakeTemporaryObject 루틴은 개체의 특성을 임시로 변경합니다.
구문
NTSYSAPI NTSTATUS ZwMakeTemporaryObject(
[in] HANDLE Handle
);
매개 변수
[in] Handle
모든 형식의 개체에 대한 핸들입니다.
반환 값
ZwMakeTemporaryObject 는 성공 시 STATUS_SUCCESS 반환하거나 실패 시 적절한 NTSTATUS 오류 코드를 반환합니다.
설명
ZwMakeTemporaryObject 는 모든 유형의 개체에서 작동하는 제네릭 루틴입니다.
개체가 지정된 OBJ_PERMANENT 개체 특성을 사용하여 만든 경우 개체는 영구적입니다. 개체 특성에 대한 자세한 내용은 InitializeObjectAttributes를 참조하세요. 영구 개체는 참조 횟수가 1로 만들어지므로 드라이버가 역참조할 때 삭제되지 않습니다.
개체가 영구적이지 않은 경우 임시 개체입니다. ZwMakeTemporaryObject 는 지정된 개체를 임시 개체로 바꿉니다. 개체가 이미 임시인 경우 이 루틴은 아무 것도 수행하지 않습니다.
임시 개체의 핸들 수가 0보다 큰 경우에만 이름이 있습니다. 핸들 수가 0에 도달하면 시스템은 개체 이름을 삭제하고 개체의 포인터 수를 적절하게 조정합니다.
이 함수에 대한 호출이 사용자 모드에서 발생하는 경우 "ZwMakeTemporaryObject" 대신 "NtMakeTemporaryObject" 이름을 사용해야 합니다.
커널 모드 드라이버에서 호출하는 경우 Windows 네이티브 시스템 서비스 루틴의 NtXxx 및 ZwXxx 버전은 입력 매개 변수를 처리하고 해석하는 방식으로 다르게 동작할 수 있습니다. 루틴의 NtXxx 버전과 ZwXxx 버전 간의 관계에 대한 자세한 내용은 네이티브 시스템 서비스 루틴의 Nt 및 Zw 버전 사용을 참조하세요.
요구 사항
요구 사항 | 값 |
---|---|
대상 플랫폼 | 유니버설 |
헤더 | wdm.h(Wdm.h, Ntddk.h, Ntifs.h 포함) |
라이브러리 | NtosKrnl.lib |
DLL | NtosKrnl.exe |
IRQL | PASSIVE_LEVEL |
DDI 규정 준수 규칙 | HwStorPortProhibitedDDIs(storport), PowerIrpDDis(wdm) |