共用方式為


FSCTL_ENUM_OVERLAY控件程式代碼

FSCTL_ENUM_OVERLAY控件程式代碼會列舉指定磁碟區支援提供者的所有數據源。

若要執行這項作業,請使用下列參數呼叫 FltFsControlFileZwFsControlFile

參數

  • 實例 [in]: 僅限 FltFsControlFile 。 呼叫端的不透明實例指標。 這是必要參數,而且無法 NULL

  • FileObject [in]: 僅 FltFsControlFile 。 指定要卸除之磁碟區的檔案指針對象。 這是必要參數,而且無法 NULL

  • FileHandle [in]: 僅限 ZwFsControlFile 。 要卸除之磁碟區的檔案句柄。 這是必要參數,而且無法 NULL

  • FsControlCode [in]:控制作業的程序代碼。 針對此作業使用 FSCTL_REMOVE_OVERLAY

  • InputBuffer [in]:輸入緩衝區的指標,必須包含 WOF_EXTERNAL_INFO 結構。

  • InputBufferLength [in]:設定為 sizeof(WOF_EXTERNAL_INFO)。

  • OutputBuffer [out]:輸出緩衝區的指標,該緩衝區將接收一或多個支援磁碟區的數據源 WIM_PROVIDER_OVERLAY_ENTRY 結構。

  • OutputBufferLength [out]: OutputBuffer 所指向的緩衝區大小,以位元組為單位。

  • LengthReturned [out]:指定成功完成時寫入 OutputBuffer 的位元組數目。

狀態區塊

如果作業成功,FltFsControlFileZwFsControlFile 會傳回STATUS_SUCCESS。 否則,適當的函式可能會傳回下列其中一個NTSTATUS值。

Code 意義
存取被拒 (STATUS_ACCESS_DENIED) 要求者沒有系統管理許可權。
STATUS_BUFFER_TOO_SMALL OutputBuffer 所指向且由 OutputBufferLength 指定的輸出緩衝區長度太小。
內部錯誤狀態 無法存取要求的磁碟區。
STATUS_INVALID_DEVICE_REQUEST 備份服務不存在或未啟動。

備註

列舉 WIM 提供者的數據源時,輸出緩衝區會包含 WIM_PROVIDER_OVERLAY_ENTRY 結構的陣列。 輸出緩衝區的大小必須夠大,才能包含所有重疊項目,否則呼叫會傳回STATUS_BUFFER_TOO_SMALL。

其他支援提供者會定義自己的特定列舉結構。

需求

需求類型 要求
最低支援的用戶端 Windows 8.1 更新版
頁首 Ntifs.h (包括 Ntifs.hFltkernel.h

另請參閱

FltFsControlFile

ZwFsControlFile

FSCTL_ADD_OVERLAY

WOF_EXTERNAL_INFO