ioGetContainerInformation 函式 (wdm.h)

IoGetContainerInformation常式提供使用者會話目前狀態的相關資訊。

語法

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

參數

[in] InformationClass

指定呼叫端 (驅動程式) 要求資訊的事件類別。 將此參數設定為下列 IO_CONTAINER_INFORMATION_CLASS 列舉值:

  • IoSessionStateInformation
如需詳細資訊,請參閱接下來的<備註>一節。

[in, optional] ContainerObject

I/O 管理員提供之不透明系統物件的指標。 針對InformationClass = IoSessionStateInformation,請將此參數設定為在呼叫驅動程式IO_SESSION_NOTIFICATION_FUNCTION函式期間由 I/O 管理員提供的SessionObject參數值。

[in, out] Buffer

呼叫端配置的緩衝區指標,這個常式會將 InformationClass所指定之事件類別的狀態資訊寫入其中。 針對InformationClass = IoSessionStateInformation,常式會將IO_SESSION_STATE_INFORMATION結構寫入緩衝區。 緩衝區必須夠大,才能包含這個結構。

[in] BufferLength

Buffer所指向之緩衝區的大小,以位元組為單位。 針對 InformationClass = IoSessionStateInformation, BufferLength 必須是至少 大小 (IO_SESSION_STATE_INFORMATION) 。

傳回值

如果呼叫成功,IoGetContainerInformation會傳回STATUS_SUCCESS。 可能的錯誤傳回值包括下列各項:

傳回碼 描述
STATUS_INVALID_PARAMETER_1
Parameter InformationClass 不是有效的 IO_CONTAINER_INFORMATION_CLASS 列舉常數。
STATUS_INVALID_PARAMETER_2
參數 ContainerObjectNull
STATUS_INVALID_PARAMETER_4
Parameter BufferLength 對於 InformationClass所指定的資訊類別而言太小。

備註

此常式可能支援各種資訊類別的查詢。 在 Windows 7 中,此常式僅支援 IoSessionStateInformation 資訊的查詢,也就是使用者會話的狀態資訊。

規格需求

   
最低支援的用戶端 可在 Windows 7 和更新版本的 Windows 作業系統中使用。
目標平臺 環球
標頭 wdm.h (包括 Wdm.h、Ntddk.h、Ntifs.h、Fltkernel.h)
程式庫 NtosKrnl.lib
DLL NtosKrnl.exe
IRQL <= APC_LEVEL

另請參閱

IO_CONTAINER_INFORMATION_CLASS

IO_CONTAINER_NOTIFICATION_CLASS

IO_SESSION_STATE_INFORMATION