NtQueryInformationTransaction-Funktion (wdm.h)

Die ZwQueryInformationTransaction-Routine ruft Informationen zu einer angegebenen Transaktion ab.

Syntax

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

Parameter

[in] TransactionHandle

Ein Handle für ein Transaktionsobjekt , das durch einen vorherigen Aufruf von ZwCreateTransaction oder ZwOpenTransaction abgerufen wurde. Das Handle muss TRANSACTION_QUERY_INFORMATION Zugriff auf das Objekt haben.

[in] TransactionInformationClass

Ein TRANSACTION_INFORMATION_CLASS typisierter Wert, der die abzurufenden Informationen angibt. Der Wert muss einer der folgenden Werte sein:

  • TransactionBasicInformation
  • TransactionPropertiesInformation
  • TransactionEnlistmentInformation
Der Wert TransactionFullInformation wird nicht mit ZwQueryInformationTransaction verwendet.

[out] TransactionInformation

Ein Zeiger auf einen vom Aufrufer zugewiesenen Puffer, der die Informationen empfängt, die der TransactionInformationClass-Parameter angibt. Der Strukturtyp des Puffers muss TRANSACTION_BASIC_INFORMATION, TRANSACTION_PROPERTIES_INFORMATION oder TRANSACTION_ENLISTMENTS_INFORMATION sein.

[in] TransactionInformationLength

Die Länge des Puffers in Bytes, auf den der TransactionInformation-Parameter verweist, einschließlich der Länge zusätzlicher Arrayelemente, die der Aufrufer zum Empfangen von Informationen zugewiesen hat.

[out, optional] ReturnLength

Ein Zeiger auf eine vom Aufrufer zugewiesene Variable, die die Länge (in Bytes) der Informationen empfängt, die KTM in den TransactionInformation-Puffer schreibt. Dieser Parameter ist optional und kann NULL sein.

Rückgabewert

ZwQueryInformationTransaction gibt STATUS_SUCCESS zurück, wenn der Vorgang erfolgreich ist. Andernfalls gibt diese Routine möglicherweise einen der folgenden Werte zurück:

Rückgabecode Beschreibung
STATUS_INVALID_INFO_CLASS
Der Wert des Parameters TransactionInformationClass ist ungültig.
STATUS_INFO_LENGTH_MISMATCH
Die Länge des Puffers, die durch den Parameter TransactionInformationLength angegeben wird, ist falsch.
STATUS_OBJECT_TYPE_MISMATCH
Das Handle, das der TransactionHandle-Parameter angibt, ist kein Handle für ein Transaktionsobjekt.
STATUS_INVALID_HANDLE
Ein Objekthandle ist ungültig.
STATUS_ACCESS_DENIED
Der Aufrufer hat keinen entsprechenden Zugriff auf das Transaktionsobjekt.
STATUS_BUFFER_OVERFLOW
Der Puffer, den der TransactionInformation-Parameter angibt, ist zu klein.
 

Die Routine gibt möglicherweise andere NTSTATUS-Werte zurück.

Hinweise

Weitere Informationen zur Verwendung von ZwQueryInformationTransaction finden Sie unter Erstellen eines Transaktionsclients.

NtQueryInformationTransaction und ZwQueryInformationTransaction sind zwei Versionen derselben Windows Native System Services-Routine.

Bei Aufrufen von Kernelmodustreibern können sich die NtXxx - und ZwXxx-Versionen einer Windows Native System Services-Routine anders verhalten, da sie Eingabeparameter verarbeiten und interpretieren. Weitere Informationen zur Beziehung zwischen den Nt Xxx- und ZwXxx-Versionen einer Routine finden Sie unter Verwenden von Nt- und Zw-Versionen der Systemdienstroutinen.

Anforderungen

Anforderung Wert
Unterstützte Mindestversion (Client) Verfügbar in Windows Vista und höheren Betriebssystemversionen.
Zielplattform Universell
Header wdm.h (einschließlich Wdm.h, Ntddk.h, Ntifs.h)
Bibliothek NtosKrnl.lib
DLL NtosKrnl.exe
IRQL PASSIVE_LEVEL
DDI-Complianceregeln HwStorPortProhibitedDIs, PowerIrpDDis

Weitere Informationen

TRANSACTION_BASIC_INFORMATION

TRANSACTION_ENLISTMENTS_INFORMATION

TRANSACTION_INFORMATION_CLASS

TRANSACTION_PROPERTIES_INFORMATION

TmGetTransactionId

Verwenden von Nt- und Zw-Versionen der Systemdienstroutinen

ZwCreateTransaction

ZwOpenTransaction

ZwSetInformationTransaction