Função IoGetContainerInformation (wdm.h)

A rotina IoGetContainerInformation fornece informações sobre o estado atual de uma sessão de usuário.

Sintaxe

NTSTATUS IoGetContainerInformation(
  [in]           IO_CONTAINER_INFORMATION_CLASS InformationClass,
  [in, optional] PVOID                          ContainerObject,
  [in, out]      PVOID                          Buffer,
  [in]           ULONG                          BufferLength
);

Parâmetros

[in] InformationClass

Especifica a classe de eventos para os quais o chamador (driver) solicita informações. Defina esse parâmetro como o seguinte IO_CONTAINER_INFORMATION_CLASS valor de enumeração:

  • IoSessionStateInformation
Para obter mais informações, consulte a seção Comentários a seguir.

[in, optional] ContainerObject

Um ponteiro para um objeto opaco do sistema fornecido pelo gerenciador de E/S. Para InformationClass = IoSessionStateInformation, defina esse parâmetro como o valor do parâmetro SessionObject fornecido pelo gerenciador de E/S durante a chamada para a função IO_SESSION_NOTIFICATION_FUNCTION do driver.

[in, out] Buffer

Um ponteiro para um buffer alocado pelo chamador no qual essa rotina grava as informações de estado para a classe de evento especificada por InformationClass. Para InformationClass = IoSessionStateInformation, a rotina grava uma estrutura IO_SESSION_STATE_INFORMATION no buffer. O buffer deve ser grande o suficiente para conter essa estrutura.

[in] BufferLength

O tamanho, em bytes, do buffer apontado por Buffer. Para InformationClass = IoSessionStateInformation, BufferLength deve ter pelo menos sizeof(IO_SESSION_STATE_INFORMATION).

Retornar valor

IoGetContainerInformation retornará STATUS_SUCCESS se a chamada for bem-sucedida. Os possíveis valores retornados por erro incluem o seguinte:

Código de retorno Descrição
STATUS_INVALID_PARAMETER_1
Parameter InformationClass não é uma constante de enumeração IO_CONTAINER_INFORMATION_CLASS válida.
STATUS_INVALID_PARAMETER_2
O parâmetro ContainerObject é NULL.
STATUS_INVALID_PARAMETER_4
O parâmetro BufferLength é muito pequeno para a classe de informações especificada por InformationClass.

Comentários

Essa rotina pode potencialmente dar suporte a consultas para uma variedade de classes de informações. No Windows 7, essa rotina dá suporte apenas a consultas para informações de IoSessionStateInformation, que são status informações sobre sessões de usuário.

Requisitos

Requisito Valor
Cliente mínimo com suporte Disponível no Windows 7 e versões posteriores do sistema operacional Windows.
Plataforma de Destino Universal
Cabeçalho wdm.h (include Wdm.h, Ntddk.h, Ntifs.h, Fltkernel.h)
Biblioteca NtosKrnl.lib
DLL NtosKrnl.exe
IRQL <= APC_LEVEL

Confira também

IO_CONTAINER_INFORMATION_CLASS

IO_CONTAINER_NOTIFICATION_CLASS

IO_SESSION_STATE_INFORMATION