Funzione ZwOpenTransactionManager (wdm.h)
La routine ZwOpenTransactionManager ottiene un handle per un oggetto gestore transazioni esistente.
Sintassi
NTSYSCALLAPI NTSTATUS ZwOpenTransactionManager(
[out] PHANDLE TmHandle,
[in] ACCESS_MASK DesiredAccess,
[in, optional] POBJECT_ATTRIBUTES ObjectAttributes,
[in, optional] PUNICODE_STRING LogFileName,
[in, optional] LPGUID TmIdentity,
[in, optional] ULONG OpenOptions
);
Parametri
[out] TmHandle
Puntatore a una variabile allocata dal chiamante che riceve un handle per l'oggetto di gestione transazioni se ZwOpenTransactionManager restituisce STATUS_SUCCESS.
[in] DesiredAccess
Valore ACCESS_MASK che specifica l'accesso richiesto dal chiamante all'oggetto di gestione transazioni. Per informazioni su come specificare questo parametro, vedere il parametro DesiredAccess di ZwCreateTransactionManager.
[in, optional] ObjectAttributes
Puntatore a una struttura OBJECT_ATTRIBUTES che specifica il nome dell'oggetto e altri attributi. Utilizzare la routine InitializeObjectAttributes per inizializzare questa struttura. Se il chiamante non è in esecuzione in un contesto di thread di sistema, deve impostare l'attributo OBJ_KERNEL_HANDLE quando chiama InitializeObjectAttributes. Questo parametro è facoltativo e può essere NULL.
[in, optional] LogFileName
Puntatore a una struttura UNICODE_STRING che contiene il percorso e il nome file del flusso di file di log creato al momento della creazione dell'oggetto di gestione transazioni. Per altre informazioni, vedere il parametro LogFileName di ZwCreateTransactionManager. Questo parametro è facoltativo e può essere NULL.
[in, optional] TmIdentity
Puntatore a un GUID che identifica l'oggetto di gestione transazioni. Questo parametro è facoltativo e può essere NULL.
[in, optional] OpenOptions
Questo parametro non viene usato e deve essere zero.
Valore restituito
ZwOpenTransactionManager restituisce STATUS_SUCCESS se l'operazione ha esito positivo. In caso contrario, questa routine potrebbe restituire uno dei valori seguenti:
Codice restituito | Descrizione |
---|---|
|
Il valore di un parametro di input non è valido. |
|
KTM non è riuscito ad allocare risorse di sistema (in genere memoria). |
|
Il nome dell'oggetto specificato dal parametro ObjectAttributes non è valido. |
|
KTM ha rilevato un errore durante la creazione o l'apertura del file di log. |
|
Il valore del parametro DesiredAccess non è valido. |
La routine potrebbe restituire altri valori NTSTATUS.
Commenti
Il chiamante può identificare l'oggetto di gestione transazioni da aprire usando una delle tre tecniche seguenti:
- Utilizzare il parametro LogFileName per specificare il percorso e il nome file di un flusso di file di log creato al momento della creazione dell'oggetto di gestione transazioni.
- Usare il parametro TmIdentity per specificare il GUID che identifica l'oggetto di gestione transazioni.
- Utilizzare il parametro ObjectAttributes per fornire una struttura OBJECT_ATTRIBUTES contenente il nome dell'oggetto specificato in precedenza dal chiamante alla routine ZwCreateTransactionManager .
Il componente TPS deve chiamare ZwRecoverTransactionManager dopo aver chiamato ZwOpenTransactionManager.
Un componente TPS che chiama ZwOpenTransactionManager deve infine chiamare ZwClose per chiudere l'handle dell'oggetto.
Per altre informazioni su come usare ZwOpenTransactionManager, vedere Oggetti di Transaction Manager e Creazione di un Resource Manager.
NtOpenTransactionManager e ZwOpenTransactionManager 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(storport), PowerIrpDDis(wdm) |
Vedi anche
Uso delle versioni Nt e Zw delle routine native di Servizi di sistema