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值,指定呼叫端對 Resource Manager 物件的要求存取權。 如需如何指定此參數的詳細資訊,請參閱 ZwCreateResourceManagerDesiredAccess 參數。 此參數不可為零。

[in] TmHandle

先前呼叫 ZwCreateTransactionManagerZwOpenTransactionManager 取得的交易管理員物件的句柄。

[in] ResourceManagerGuid

GUID 的指標,可識別要開啟的資源管理員。

[in, optional] ObjectAttributes

指定物件屬性 之OBJECT_ATTRIBUTES 結構的指標。 使用 InitializeObjectAttributes 例程來初始化這個結構,但只指定該例程的 InitializedAttributesAttributes 參數。 如果呼叫端未在系統線程內容中執行,則必須在 Attributes 參數中設定OBJ_KERNEL_HANDLE旗標。 此參數是選擇性的,可以是 NULL

傳回值

如果作業成功,ZwOpenResourceManager 會傳回STATUS_SUCCESS。 否則,此例程可能會傳回下列其中一個值:

傳回碼 Description
STATUS_OBJECT_TYPE_MISMATCH
TmHandle 指定的句柄不是交易物件的句柄。
STATUS_INVALID_HANDLE
TmHandle 指定的句柄無效。
STATUS_ACCESS_DENIED
呼叫端沒有指定之交易管理員對象的適當存取權。
STATUS_INVALID_PARAMETER
DesiredAccess 參數為零,或 ResourceManagerGuid 參數無效。
STATUS_RESOURCEMANAGER_NOT_FOUND
找不到指定的資源管理員。
STATUS_TRANSACTIONMANAGER_NOT_ONLINE
指定的交易管理員不在在線。
 

例程可能會傳回其他 NTSTATUS值

備註

一般而言,TPS 元件從先前稱為 ZwCreateResourceManager 的另一個 TPS 元件收到登記 GUID 後呼叫 ZwOpenResourceManager。 大部分的 TPS 設計不需要呼叫 ZwOpenResourceManager

呼叫 ZwOpenResourceManager 的資源管理員最終必須呼叫 ZwClose 以關閉物件句柄。

如需 ZwOpenResourceManager 的詳細資訊,請參閱 KTM 物件

NtOpenResourceManagerZwOpenResourceManager 是相同 Windows 原生系統服務例程的兩個版本。

對於核心模式驅動程式的呼叫,Windows 原生系統服務例程的 NtXxxZwXxx 版本在處理和解譯輸入參數的方式可能會有不同的行為。 如需例程 NtXxxZwXxx 版本之間的關聯性詳細資訊,請參閱 使用 Nt 和 Zw 版本的原生系統服務例程

規格需求

需求
最低支援的用戶端 適用於 Windows Vista 和更新版本的作業系統版本。
目標平台 Universal
標頭 wdm.h (包括 Wdm.h、Ntifs.h)
程式庫 NtosKrnl.lib
Dll NtosKrnl.exe
IRQL PASSIVE_LEVEL
DDI 合規性規則 HwStorPortProhibitedDIS、 PowerIrpDDis

另請參閱

InitializeObjectAttributes

OBJECT_ATTRIBUTES

使用原生系統服務例程的 Nt 和 Zw 版本

ZwClose

ZwCreateResourceManager

ZwCreateTransactionManager

ZwOpenTransactionManager