Função NtQueryInformationTransaction (wdm.h)
A rotina ZwQueryInformationTransaction recupera informações sobre uma transação especificada.
Sintaxe
__kernel_entry NTSYSCALLAPI NTSTATUS NtQueryInformationTransaction(
[in] HANDLE TransactionHandle,
[in] TRANSACTION_INFORMATION_CLASS TransactionInformationClass,
[out] PVOID TransactionInformation,
[in] ULONG TransactionInformationLength,
[out, optional] PULONG ReturnLength
);
Parâmetros
[in] TransactionHandle
Um identificador para um objeto de transação que foi obtido por uma chamada anterior para ZwCreateTransaction ou ZwOpenTransaction. O identificador deve ter TRANSACTION_QUERY_INFORMATION acesso ao objeto .
[in] TransactionInformationClass
Um valor de tipo TRANSACTION_INFORMATION_CLASS que especifica as informações a serem obtidas. O valor deve ser um dos seguintes valores:
- TransactionBasicInformation
- TransactionPropertiesInformation
- TransactionEnlistmentInformation
[out] TransactionInformation
Um ponteiro para um buffer alocado pelo chamador que recebe as informações especificadas pelo parâmetro TransactionInformationClass . O tipo de estrutura do buffer deve ser TRANSACTION_BASIC_INFORMATION, TRANSACTION_PROPERTIES_INFORMATION ou TRANSACTION_ENLISTMENTS_INFORMATION.
[in] TransactionInformationLength
O comprimento, em bytes, do buffer para o qual o parâmetro TransactionInformation aponta, incluindo o comprimento de quaisquer elementos de matriz adicionais que o chamador tenha alocado para receber informações.
[out, optional] ReturnLength
Um ponteiro para uma variável alocada pelo chamador que recebe o comprimento, em bytes, das informações que o KTM grava no buffer TransactionInformation . Esse parâmetro é opcional e pode ser NULL.
Retornar valor
ZwQueryInformationTransaction retornará STATUS_SUCCESS se a operação for bem-sucedida. Caso contrário, essa rotina pode retornar um dos seguintes valores:
Código de retorno | Descrição |
---|---|
|
O valor do parâmetro TransactionInformationClass é inválido. |
|
O comprimento do buffer especificado pelo parâmetro TransactionInformationLength está incorreto. |
|
O identificador que o parâmetro TransactionHandle especifica não é um identificador para um objeto de transação. |
|
Um identificador de objeto é inválido. |
|
O chamador não tem acesso apropriado ao objeto de transação. |
|
O buffer especificado pelo parâmetro TransactionInformation é muito pequeno. |
A rotina pode retornar outros valores NTSTATUS.
Comentários
Para obter mais informações sobre como usar ZwQueryInformationTransaction, consulte Criando um cliente transacional.
NtQueryInformationTransaction e ZwQueryInformationTransaction são duas versões da mesma rotina do Windows Native System Services.
Para chamadas de drivers de modo kernel, as versões NtXxx e ZwXxx de uma rotina do Windows Native System Services podem se comportar de forma diferente na maneira como lidam e interpretam parâmetros de entrada. Para obter mais informações sobre a relação entre as versões NtXxx e ZwXxx de uma rotina, consulte Using Nt and Zw Versions of the Native System Services Routines.
Requisitos
Requisito | Valor |
---|---|
Cliente mínimo com suporte | Disponível no Windows Vista e versões posteriores do sistema operacional. |
Plataforma de Destino | Universal |
Cabeçalho | wdm.h (include Wdm.h, Ntddk.h, Ntifs.h) |
Biblioteca | NtosKrnl.lib |
DLL | NtosKrnl.exe |
IRQL | PASSIVE_LEVEL |
Regras de conformidade da DDI | HwStorPortProhibitedDDIs, PowerIrpDDis |
Confira também
TRANSACTION_ENLISTMENTS_INFORMATION
TRANSACTION_PROPERTIES_INFORMATION
Usando versões Nt e Zw das rotinas de serviços do sistema nativo