다음을 통해 공유


NtOpenResourceManager 함수(wdm.h)

ZwOpenResourceManager 루틴은 기존Resource Manager 개체에 대한 핸들을 반환합니다.

통사론

__kernel_entry NTSYSCALLAPI NTSTATUS NtOpenResourceManager(
  [out]          PHANDLE            ResourceManagerHandle,
  [in]           ACCESS_MASK        DesiredAccess,
  [in]           HANDLE             TmHandle,
  [in]           LPGUID             ResourceManagerGuid,
  [in, optional] POBJECT_ATTRIBUTES ObjectAttributes
);

매개 변수

[out] ResourceManagerHandle

ZwOpenResourceManager 호출이 성공하면 리소스 관리자 핸들을 수신하는 호출자 할당 변수에 대한 포인터입니다.

[in] DesiredAccess

리소스 관리자 개체에 대한 호출자의 요청된 액세스를 지정하는 ACCESS_MASK 값입니다. 이 매개 변수를 지정하는 방법에 대한 자세한 내용은 ZwCreateResourceManagerDesiredAccess 매개 변수를 참조하세요. 이 매개 변수는 0일 수 없습니다.

[in] TmHandle

ZwCreateTransactionManager 또는 ZwOpenTransactionManager대한 이전 호출로 얻은 트랜잭션 관리자 개체에 대한 핸들입니다.

[in] ResourceManagerGuid

열 리소스 관리자를 식별하는 GUID에 대한 포인터입니다.

[in, optional] ObjectAttributes

개체의 특성을 지정하는 OBJECT_ATTRIBUTES 구조체에 대한 포인터입니다. InitializeObjectAttributes 루틴을 사용하여 이 구조를 초기화하지만 해당 루틴의 InitializedAttributes특성 매개 변수만 지정합니다. 호출자가 시스템 스레드 컨텍스트에서 실행되고 있지 않으면 Attributes 매개 변수에서 OBJ_KERNEL_HANDLE 플래그를 설정해야 합니다. 이 매개 변수는 선택 사항이며 NULL 수 있습니다.

반환 값

ZwOpenResourceManager 작업이 성공하면 STATUS_SUCCESS 반환합니다. 그렇지 않으면 이 루틴이 다음 값 중 하나를 반환할 수 있습니다.

반환 코드 묘사
STATUS_OBJECT_TYPE_MISMATCH
TmHandle 지정하는 핸들은 트랜잭션 개체에 대한 핸들이 아닙니다.
STATUS_INVALID_HANDLE
TmHandle 지정하는 핸들이 잘못되었습니다.
STATUS_ACCESS_DENIED
호출자에게 지정된 트랜잭션 관리자 개체에 대한 적절한 액세스 권한이 없습니다.
STATUS_INVALID_PARAMETER
DesiredAccess 매개 변수가 0이거나 ResourceManagerGuid 매개 변수가 잘못되었습니다.
STATUS_RESOURCEMANAGER_NOT_FOUND
지정된 리소스 관리자를 찾을 수 없습니다.
STATUS_TRANSACTIONMANAGER_NOT_ONLINE
지정된 트랜잭션 관리자가 온라인 상태가 아닙니다.
 

루틴은 다른NTSTATUS 값을 반환할 수 있습니다.

발언

일반적으로 TPS 구성 요소는 이전에 ZwCreateResourceManager호출한 다른 TPS 구성 요소에서 인리스트먼트 GUID를 수신한 후 ZwOpenResourceManager 호출합니다. 대부분의 TPS 디자인은 ZwOpenResourceManager호출할 필요가 없습니다.

ZwOpenResourceManager 호출하는 리소스 관리자는 결국 ZwClose 호출하여 개체 핸들을 닫아야 합니다.

ZwOpenResourceManager 대한 자세한 내용은 KTM 개체참조하세요.

NtOpenResourceManagerZwOpenResourceManager 동일한 Windows 네이티브 시스템 서비스 루틴의 두 가지 버전입니다.

커널 모드 드라이버의 호출의 경우 NtXxxZwXxx 버전의 Windows Native System Services 루틴은 입력 매개 변수를 처리하고 해석하는 방식으로 다르게 동작할 수 있습니다. NtXxxZwXxx 루틴 버전 간의 관계에 대한 자세한 내용은 네이티브 시스템 서비스 루틴 Nt 및 Zw 버전 사용참조하세요.

요구 사항

요구
지원되는 최소 클라이언트 Windows Vista 이상 운영 체제 버전에서 사용할 수 있습니다.
대상 플랫폼 보편적
헤더 wdm.h(Wdm.h, Ntifs.h 포함)
라이브러리 NtosKrnl.lib
DLL NtosKrnl.exe
IRQL PASSIVE_LEVEL
DDI 규정 준수 규칙 HwStorPortProhibitedDDIs, PowerIrpDDis

참고 항목

InitializeObjectAttributes

OBJECT_ATTRIBUTES

네이티브 시스템 서비스 루틴 Nt 및 Zw 버전 사용

ZwClose

ZwCreateResourceManager

ZwCreateTransactionManager

ZwOpenTransactionManager