ioGetBootDiskInformation 函数 (wdm.h)

IoGetBootDiskInformation 例程返回描述启动磁盘和系统磁盘的信息。

语法

NTSTATUS IoGetBootDiskInformation(
  [in, out] PBOOTDISK_INFORMATION BootDiskInformation,
  [in]      ULONG                 Size
);

参数

[in, out] BootDiskInformation

指向调用方分配的缓冲区的指针,例程使用该缓冲区返回有关启动磁盘和系统磁盘的信息。 例程使用 BOOTDISK_INFORMATIONBOOTDISK_INFORMATION_EX 结构填充此缓冲区。

[in] Size

指定 BootDiskInformation 指定的缓冲区的大小(以字节为单位)。 应为 sizeof (BOOTDISK_INFORMATION) sizeof (BOOTDISK_INFORMATION_EX)

返回值

IoGetBootDiskInformation 返回以下状态值之一:

返回代码 说明
STATUS_SUCCESS
例程在 BootDiskInformation 指定的缓冲区中成功返回请求的信息。
STATUS_INVALID_PARAMETER
Size 的值小于BOOTDISK_INFORMATION结构的大小(以字节为单位)。
STATUS_TOO_LATE
驱动程序在系统已启动后调用例程。 只有启动和系统驱动程序才能调用 IoGetBootDiskInformation,然后只能在其 DriverEntryAddDevice 例程中调用。

注解

IoGetBootDiskInformation 只能由启动驱动程序调用。 此驱动程序应在驱动程序通过调用 IoRegisterBootDriverReinitialization 例程注册的 Reinitialize 回调例程中调用 IoGetBootDiskInformation

在 Windows XP 和更高版本的 Windows 上,如果 Size 参数的大小为 (BOOTDISK_INFORMATION_EX) 或更大,则例程在 BootDiskInformation 缓冲区中返回BOOTDISK_INFORMATION_EX结构。 否则,如果 Size至少为 (BOOTDISK_INFORMATION) , 则例程返回 BOOTDISK_INFORMATION 结构。

在 Windows 2000 上,例程仅返回 BOOTDISK_INFORMATION 结构。

要求

要求
最低受支持的客户端 从 Windows 2000 开始可用。
目标平台 通用
标头 wdm.h(包括 Wdm.h、Ntddk.h、Ntifs.h)
Library NtosKrnl.lib
DLL NtosKrnl.exe
IRQL <= APC_LEVEL

另请参阅

BOOTDISK_INFORMATION

BOOTDISK_INFORMATION_EX

IoRegisterBootDriverReinitialization

重新初始化