Fonction ZwQueryInformationTransaction (wdm.h)
La routine ZwQueryInformationTransaction récupère des informations sur une transaction spécifiée.
Syntaxe
NTSYSCALLAPI NTSTATUS ZwQueryInformationTransaction(
[in] HANDLE TransactionHandle,
[in] TRANSACTION_INFORMATION_CLASS TransactionInformationClass,
[out] PVOID TransactionInformation,
[in] ULONG TransactionInformationLength,
[out, optional] PULONG ReturnLength
);
Paramètres
[in] TransactionHandle
Handle d’un objet de transaction obtenu par un appel précédent à ZwCreateTransaction ou ZwOpenTransaction. Le handle doit avoir TRANSACTION_QUERY_INFORMATION accès à l’objet.
[in] TransactionInformationClass
Valeur de type TRANSACTION_INFORMATION_CLASS qui spécifie les informations à obtenir. La valeur doit être l’une des valeurs suivantes :
- TransactionBasicInformation
- TransactionPropertiesInformation
- TransactionEnlistmentInformation
[out] TransactionInformation
Pointeur vers une mémoire tampon allouée à l’appelant qui reçoit les informations spécifiées par le paramètre TransactionInformationClass . Le type de structure de la mémoire tampon doit être TRANSACTION_BASIC_INFORMATION, TRANSACTION_PROPERTIES_INFORMATION ou TRANSACTION_ENLISTMENTS_INFORMATION.
[in] TransactionInformationLength
Longueur, en octets, de la mémoire tampon vers laquelle pointe le paramètre TransactionInformation , y compris la longueur des éléments de tableau supplémentaires alloués par l’appelant pour recevoir des informations.
[out, optional] ReturnLength
Pointeur vers une variable allouée par l’appelant qui reçoit la longueur, en octets, des informations que KTM écrit dans la mémoire tampon TransactionInformation . Ce paramètre est facultatif et peut être NULL.
Valeur retournée
ZwQueryInformationTransaction retourne STATUS_SUCCESS si l’opération réussit. Sinon, cette routine peut retourner l’une des valeurs suivantes :
Code de retour | Description |
---|---|
|
La valeur du paramètre TransactionInformationClass n’est pas valide. |
|
La longueur de la mémoire tampon spécifiée par le paramètre TransactionInformationLength est incorrecte. |
|
Le handle spécifié par le paramètre TransactionHandle n’est pas un handle pour un objet de transaction. |
|
Un handle d’objet n’est pas valide. |
|
L’appelant n’a pas l’accès approprié à l’objet de transaction. |
|
La mémoire tampon spécifiée par le paramètre TransactionInformation est trop petite. |
La routine peut retourner d’autres valeurs NTSTATUS.
Remarques
Pour plus d’informations sur l’utilisation de ZwQueryInformationTransaction, consultez Création d’un client transactionnel.
NtQueryInformationTransaction et ZwQueryInformationTransaction sont deux versions de la même routine Windows Native System Services.
Pour les appels à partir de pilotes en mode noyau, les versions NtXxx et ZwXxx d’une routine Windows Native System Services peuvent se comporter différemment dans la façon dont elles gèrent et interprètent les paramètres d’entrée. Pour plus d’informations sur la relation entre les versions NtXxx et ZwXxx d’une routine, consultez Utilisation des versions Nt et Zw des routines des services système natifs.
Configuration requise
Condition requise | Valeur |
---|---|
Client minimal pris en charge | Disponible dans Windows Vista et les versions ultérieures du système d’exploitation. |
Plateforme cible | Universal |
En-tête | wdm.h (inclure Wdm.h, Ntddk.h, Ntifs.h) |
Bibliothèque | NtosKrnl.lib |
DLL | NtosKrnl.exe |
IRQL | PASSIVE_LEVEL |
Règles de conformité DDI | HwStorPortProhibitedDDIs(storport),PowerIrpDDis(wdm) |
Voir aussi
TRANSACTION_ENLISTMENTS_INFORMATION
TRANSACTION_PROPERTIES_INFORMATION
Utilisation des versions Nt et Zw des routines natives des services système natifs