FSCTL_ENUM_OVERLAY控制代码

FSCTL_ENUM_OVERLAY 代码枚举指定卷的支持提供程序的所有数据源。

若要执行此操作,请通过以下参数调用 FltFsControlFileZwFsControlFile

Parameters

实例 [in]
仅 FltFsControlFile 。 调用方的不透明实例指针。 此参数是必需的,不能为 NULL

FileObject [in]
仅 FltFsControlFile 。 指定要卸载的卷的文件指针对象。 此参数是必需的,不能为 NULL

FileHandle [in]
仅 ZwFsControlFile 。 要卸载的卷的文件句柄。 此参数是必需的,不能为 NULL

FsControlCode [in]
操作的控制代码。 使用 FSCTL_REMOVE_OVERLAY 执行该操作。

InputBuffer
指向输入缓冲区的指针,该缓冲区 必须包含WOF_EXTERNAL_INFO 结构。

InputBufferLength [in]
设置为 sizeof (WOF_EXTERNAL_INFO)

OutputBuffer [out]
指向输出缓冲区的指针,该缓冲区将接收WIM_PROVIDER_OVERLAY_ENTRY卷的数据源的一个或多个结构。

OutputBufferLength [out]
OutputBuffer 指向的缓冲区的大小(以字节为单位)。

LengthRe以 [out]
指定成功完成时写入 OutputBuffer 的字节数。

状态块

如果操作成功,FltFsControlFileZwFsControlFile STATUS_SUCCESS返回 。 否则,相应的函数可能会返回以下 NTSTATUS 值之一。

术语 说明

STATUS_ACCESS_DENIED

请求者没有管理权限。

STATUS_BUFFER_TOO_SMALL

OutputBuffer 指向且 OutputBufferLength 指定的输出缓冲区的长度太小。

STATUS_INTERNAL_ERROR

请求的卷不可访问。

STATUS_INVALID_DEVICE_REQUEST

支持服务不存在或尚未启动。

备注

枚举 WIM 提供程序的数据源时,输出缓冲区将包含一个包含WIM_PROVIDER_OVERLAY_ENTRY数组。 输出缓冲区的大小必须足够大,以包含所有覆盖条目,否则调用将返回STATUS_BUFFER_TOO_SMALL。

其他后备提供程序将定义自己的特定枚举结构。

要求

版本

从 Windows 8.1 更新 开始可用。

标头

Ntifs.h (包括 Ntifs.h 或 Fltkernel.h)

另请参阅

FltFsControlFile

ZwFsControlFile

FSCTL_ADD_OVERLAY

WOF_EXTERNAL_INFO