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 は、sizeof(IO_SESSION_STATE_INFORMATION) 以上である必要があります。
戻り値
IoGetContainerInformation 、呼び出しが成功した場合にSTATUS_SUCCESSを返します。 考えられるエラー戻り値は次のとおりです。
リターン コード | 形容 |
---|---|
|
パラメーター InformationClass は有効な IO_CONTAINER_INFORMATION_CLASS 列挙定数ではありません。 |
|
ContainerObject パラメーターが NULL 。 |
|
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