Funzione NtQueryInformationTransaction (wdm.h)

La routine ZwQueryInformationTransaction recupera informazioni su una transazione specificata.

Sintassi

__kernel_entry NTSYSCALLAPI NTSTATUS NtQueryInformationTransaction(
  [in]            HANDLE                        TransactionHandle,
  [in]            TRANSACTION_INFORMATION_CLASS TransactionInformationClass,
  [out]           PVOID                         TransactionInformation,
  [in]            ULONG                         TransactionInformationLength,
  [out, optional] PULONG                        ReturnLength
);

Parametri

[in] TransactionHandle

Handle a un oggetto transazione ottenuto da una chiamata precedente a ZwCreateTransaction o ZwOpenTransaction. L'handle deve avere TRANSACTION_QUERY_INFORMATION accesso all'oggetto.

[in] TransactionInformationClass

Valore TRANSACTION_INFORMATION_CLASS tipizzato che specifica le informazioni da ottenere. Il valore deve essere uno dei valori seguenti:

  • TransactionBasicInformation
  • TransactionPropertiesInformation
  • TransactionEnlistmentInformation
Il valore TransactionFullInformation non viene usato con ZwQueryInformationTransaction.

[out] TransactionInformation

Puntatore a un buffer allocato del chiamante che riceve le informazioni specificate dal parametro TransactionInformationClass . Il tipo di struttura del buffer deve essere TRANSACTION_BASIC_INFORMATION, TRANSACTION_PROPERTIES_INFORMATION o TRANSACTION_ENLISTMENTS_INFORMATION.

[in] TransactionInformationLength

Lunghezza, in byte, del buffer a cui punta il parametro TransactionInformation , inclusa la lunghezza di eventuali elementi di matrice aggiuntivi allocati dal chiamante per ricevere informazioni.

[out, optional] ReturnLength

Puntatore a una variabile allocata dal chiamante che riceve la lunghezza, in byte, delle informazioni che KTM scrive nel buffer TransactionInformation . Questo parametro è facoltativo e può essere NULL.

Valore restituito

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

Codice restituito Descrizione
STATUS_INVALID_INFO_CLASS
Il valore del parametro TransactionInformationClass non è valido.
STATUS_INFO_LENGTH_MISMATCH
La lunghezza del buffer specificata dal parametro TransactionInformationLength non è corretta.
STATUS_OBJECT_TYPE_MISMATCH
L'handle specificato dal parametro TransactionHandle non è un handle per un oggetto transazione.
STATUS_INVALID_HANDLE
Un handle oggetto non è valido.
STATUS_ACCESS_DENIED
Il chiamante non dispone dell'accesso appropriato all'oggetto transazione.
STATUS_BUFFER_OVERFLOW
Il buffer specificato dal parametro TransactionInformation è troppo piccolo.
 

La routine potrebbe restituire altri valori NTSTATUS.

Commenti

Per altre informazioni sull'uso di ZwQueryInformationTransaction, vedere Creazione di un client transazionale.

NtQueryInformationTransaction e ZwQueryInformationTransaction sono due versioni della stessa routine di Windows Native System Services.

Per le chiamate dai driver in modalità kernel, le versioni NtXxx e ZwXxx di una routine di Windows Native System Services 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 Uso di nt e zw versioni delle routine di Servizi di sistema nativo.

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, Ntddk.h, Ntifs.h)
Libreria NtosKrnl.lib
DLL NtosKrnl.exe
IRQL PASSIVE_LEVEL
Regole di conformità DDI HwStorPortProhibitedDDIs, PowerIrpDDis

Vedi anche

TRANSACTION_BASIC_INFORMATION

TRANSACTION_ENLISTMENTS_INFORMATION

TRANSACTION_INFORMATION_CLASS

TRANSACTION_PROPERTIES_INFORMATION

TmGetTransactionId

Uso di nt e zw versioni delle routine di Servizi di sistema nativo

ZwCreateTransaction

ZwOpenTransaction

ZwSetInformationTransaction