共用方式為


FSCTL_QUERY_PERSISTENT_VOLUME_STATE控件程序代碼

FSCTL_QUERY_PERSISTENT_VOLUME_STATE控制程式代碼會擷取文件系統磁碟區的持續性設定。 在電腦重新啟動之間,持續性設定會保留在檔案系統磁碟區上。

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

參數

  • FileObject [in]: FltFsControlFile 僅限 。 檔系統磁碟區的檔案物件指標。 這個參數是必要的,而且不能是 NULL

  • FileHandle [in]:僅限 ZwFsControlFile 。 檔系統磁碟區的檔案句柄。 這個參數是必要的,而且不能是 NULL

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

  • InputBuffer [in]:呼叫端配置 FILE_FS_PERSISTENT_VOLUME_INFORMATION 結構的指標。

  • InputBufferLength [in]: InputBuffer 參數所指向緩衝區的大小,以位元組為單位。

  • OutputBuffer [out]:呼叫端配置的 FILE_FS_PERSISTENT_VOLUME_INFORMATION 結構的指標,可接收文件系統磁碟區的永續性設定。

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

狀態區塊

FltFsControlFileZwFsControlFile 會傳回STATUS_SUCCESS或適當的 NTSTATUS 值,例如下列其中一項:

程式碼 意義
STATUS_NOT_SUPPORTED 呼叫端在 FILE_FS_PERSISTENT_VOLUME_INFORMATIONVersion 成員中指定了不正確的版本號碼。
STATUS_INVALID_PARAMETER 文件系統磁碟區不是開啟的使用者磁碟區,或呼叫者在 FILE_FS_PERSISTENT_VOLUME_INFORMATIONFlagMask 成員中指定了無效的旗標。
STATUS_BUFFER_TOO_SMALL InputBuffer 參數指向的緩衝區不夠大, (也就是說,緩衝區小於 sizeof (FILE_FS_PERSISTENT_VOLUME_INFORMATION) ) 。 在此情況下,不會傳回任何永續性設定數據。 這是錯誤碼。
STATUS_ACCESS_DENIED 呼叫端無法存取檔系統磁碟區。
STATUS_VOLUME_DISMOUNTED 檔系統磁碟區已卸除。
STATUS_TOO_LATE 檔案系統磁碟區已關閉。
STATUS_MEDIA_WRITE_PROTECTED 檔系統磁碟區是唯讀的。

規格需求

需求類型 需求
最低支援的用戶端 Windows 7
標頭 Ntifs.h (包括 Ntifs.hFltkernel.h)

另請參閱

FILE_FS_PERSISTENT_VOLUME_INFORMATION

FltFsControlFile

ZwFsControlFile