Condividi tramite


Funzione NtOpenResourceManager (wdm.h)

La routine ZwOpenResourceManager restituisce un handle a un oggetto resource manager esistente.

Sintassi

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

Parametri

[out] ResourceManagerHandle

Puntatore a una variabile allocata dal chiamante che riceve l'handle di Resource Manager se la chiamata a ZwOpenResourceManager ha esito positivo.

[in] DesiredAccess

Valore ACCESS_MASK che specifica l'accesso richiesto dal chiamante all'oggetto resource manager. Per altre informazioni su come specificare questo parametro, vedere il parametro DesiredAccess di ZwCreateResourceManager. Questo parametro non può essere zero.

[in] TmHandle

Handle per un oggetto di gestione transazioni ottenuto da una chiamata precedente a ZwCreateTransactionManager o ZwOpenTransactionManager.

[in] ResourceManagerGuid

Puntatore al GUID che identifica il gestore di risorse da aprire.

[in, optional] ObjectAttributes

Puntatore a una struttura OBJECT_ATTRIBUTES che specifica gli attributi dell'oggetto. Utilizzare la routine InitializeObjectAttributes per inizializzare questa struttura, ma specificare solo i parametri InitializedAttributes e Attributes della routine. Se il chiamante non è in esecuzione in un contesto di thread di sistema, deve impostare il flag OBJ_KERNEL_HANDLE nel parametro Attributes . Questo parametro è facoltativo e può essere NULL.

Valore restituito

ZwOpenResourceManager restituisce STATUS_SUCCESS se l'operazione ha esito positivo. In caso contrario, questa routine potrebbe restituire uno dei valori seguenti:

Codice restituito Descrizione
STATUS_OBJECT_TYPE_MISMATCH
L'handle specificato da TmHandle non è un handle per un oggetto transazione.
STATUS_INVALID_HANDLE
Handle specificato da TmHandle non valido.
STATUS_ACCESS_DENIED
Il chiamante non dispone dell'accesso appropriato all'oggetto di gestione transazioni specificato.
STATUS_INVALID_PARAMETER
Il parametro DesiredAccess è zero o il parametro ResourceManagerGuid non è valido.
STATUS_RESOURCEMANAGER_NOT_FOUND
Impossibile trovare il gestore di risorse specificato.
STATUS_TRANSACTIONMANAGER_NOT_ONLINE
Il gestore transazioni specificato non è online.
 

La routine potrebbe restituire altri valori NTSTATUS.

Commenti

In genere, un componente TPS chiama ZwOpenResourceManager dopo che riceve un GUID di integrazione da un altro componente TPS che in precedenza aveva chiamato ZwCreateResourceManager. La maggior parte dei progetti TPS non richiede la chiamata a ZwOpenResourceManager.

Un gestore di risorse che chiama ZwOpenResourceManager deve infine chiamare ZwClose per chiudere l'handle dell'oggetto.

Per altre informazioni su ZwOpenResourceManager, vedere Oggetti KTM.

NtOpenResourceManager e ZwOpenResourceManager sono due versioni della stessa routine di Servizi di sistema nativi di Windows.

Per le chiamate da driver in modalità kernel, le versioni NtXxx e ZwXxx di una routine di Servizi di sistema nativi di Windows possono comportarsi in modo diverso nel modo in cui gestiscono e interpretano i parametri di input. Per altre informazioni sulla relazione tra le versioni NtXxx e ZwXxx di una routine, vedere Using Nt and Zw Versions of the Native System Services Routines .For more information about the Nt Xxx and Zw versions of the Native System Services Routines.

Requisiti

Requisito Valore
Client minimo supportato Disponibile in Windows Vista e versioni successive del sistema operativo.
Piattaforma di destinazione Universale
Intestazione wdm.h (include Wdm.h, Ntifs.h)
Libreria NtosKrnl.lib
DLL NtosKrnl.exe
IRQL PASSIVE_LEVEL
Regole di conformità DDI HwStorPortProhibitedDDIs, PowerIrpDDis

Vedi anche

InitializeObjectAttributes

OBJECT_ATTRIBUTES

Uso delle versioni Nt e Zw delle routine native di Servizi di sistema

ZwClose

ZwCreateResourceManager

ZwCreateTransactionManager

ZwOpenTransactionManager