NtQueryInformationTransaction-Funktion (wdm.h)
Die ZwQueryInformationTransaction Routine ruft Informationen zu einer angegebenen Transaktion ab.
__kernel_entry NTSYSCALLAPI NTSTATUS NtQueryInformationTransaction(
[in] HANDLE TransactionHandle,
[in] TRANSACTION_INFORMATION_CLASS TransactionInformationClass,
[out] PVOID TransactionInformation,
[in] ULONG TransactionInformationLength,
[out, optional] PULONG ReturnLength
);
[in] TransactionHandle
Ein Handle für ein Transaktionsobjekt, das durch einen vorherigen Aufruf von ZwCreateTransaction oder ZwOpenTransactionabgerufen wurde. Das Handle muss über TRANSACTION_QUERY_INFORMATION Zugriff auf das Objekt verfügen.
[in] TransactionInformationClass
Ein TRANSACTION_INFORMATION_CLASS-typed-Wert, der die abzurufenden Informationen angibt. Der Wert muss einer der folgenden Werte sein:
- TransactionBasicInformation
- TransactionPropertiesInformation
- TransactionEnlistmentInformation-
[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_INFORMATIONoder TRANSACTION_ENLISTMENTS_INFORMATIONsein.
[in] TransactionInformationLength
Die Länge des Puffers, auf den der TransactionInformation Parameter verweist, einschließlich der Länge aller zusätzlichen 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 Byte) der Informationen empfängt, die KTM in den TransactionInformation- Puffer schreibt. Dieser Parameter ist optional und kann NULL-werden.
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 |
---|---|
|
Der Wert des TransactionInformationClass- Parameters ist ungültig. |
|
Die Länge des Puffers, der durch den TransactionInformationLength Parameter angegeben wird, ist falsch. |
|
Das Handle, das der TransactionHandle Parameter angibt, ist kein Handle für ein Transaktionsobjekt. |
|
Ein Objekthandle ist ungültig. |
|
Der Aufrufer hat keinen geeigneten Zugriff auf das Transaktionsobjekt. |
|
Der Puffer, den der TransactionInformation Parameter angibt, ist zu klein. |
Die Routine gibt möglicherweise andere NTSTATUS-Wertezurück.
Weitere Informationen zur Verwendung 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, wie sie Eingabeparameter behandeln und interpretieren. Weitere Informationen zur Beziehung zwischen den NtXxx und ZwXxx- Versionen einer Routine finden Sie unter Using Nt and Zw Versions of the Native System Services Routines.
Anforderung | Wert |
---|---|
mindestens unterstützte Client- | Verfügbar in Windows Vista und höheren Betriebssystemversionen. |
Zielplattform- | Universal |
Header- | wdm.h (include Wdm.h, Ntddk.h, Ntifs.h) |
Library | NtosKrnl.lib |
DLL- | NtosKrnl.exe |
IRQL- | PASSIVE_LEVEL |
DDI-Complianceregeln | HwStorPortProhibitedDIs, PowerIrpDDis |
TRANSACTION_ENLISTMENTS_INFORMATION
TRANSACTION_PROPERTIES_INFORMATION
Verwenden von Nt- und Zw-Versionen der systemeigenen Systemdienste-Routinen