共用方式為


FSCTL_ADD_OVERLAY控件程式代碼

FSCTL_ADD_OVERLAY控件程式代碼會將新的外部備份來源新增至磁碟區的命名空間。 此備份來源可以是 Windows 映像格式 (WIM) 檔案。

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

參數

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

  • FileObject: [in]: FltFsControlFile 。 重疊新增至之磁碟區的檔案指針對象。 這個參數是必要的,而且不能是 NULL。

  • FileHandle [in]: 僅限 ZwFsControlFile 。 重疊加入的磁碟區句柄。 這個參數是必要的,而且不能是 NULL。

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

  • InputBuffer [in]:輸入緩衝區的指標,必須包含 WOF_EXTERNAL_INFO 結構。 必要時,會在 WOF_EXTERNAL_INFO之後立即包含其他提供者特定數據。

  • InputBufferLength [in]:設定為 sizeof(WOF_EXTERNAL_INFO) 加上任何其他提供者輸入數據的大小。

  • OutputBuffer [out]:輸出緩衝區的指標,其中包含來自新增作業的任何結果資訊。

  • OutputBufferLength [out]: OutputBuffer 所指向的緩衝區大小。

狀態區塊

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

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

備註

當新增的備份來源是 Windows 映像格式 (WIM) 檔案時,輸入緩衝區會包含 WOF_EXTERNAL_INFO 結構,後面接著 WIM_PROVIDER_ADD_OVERLAY_INPUT 結構。 在此案例中 ,InputBufferLength 將是 sizeofWOF_EXTERNAL_INFO) + sizeofWIM_PROVIDER_ADD_OVERLAY_INPUT)。 要求完成時, OutputBuffer 所指向的數據會包含單一LARGE_INTEGER值,這是 WIM 檔案的新數據源標識符。

其他備份提供者會定義自己的特定輸入參數結構和輸出數據類型。

需求

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

另請參閱

FSCTL_REMOVE_OVERLAY

FSCTL_SUSPEND_OVERLAY

FSCTL_UPDATE_OVERLAY

FSCTL_GET_EXTERNAL_BACKING

FSCTL_SET_EXTERNAL_BACKING