FILE_FS_CONTROL_INFORMATION結構 (ntifs.h)

FILE_FS_CONTROL_INFORMATION 結構可用來查詢或設定目錄中檔案的控制資訊。

語法

typedef struct _FILE_FS_CONTROL_INFORMATION {
  LARGE_INTEGER FreeSpaceStartFiltering;
  LARGE_INTEGER FreeSpaceThreshold;
  LARGE_INTEGER FreeSpaceStopFiltering;
  LARGE_INTEGER DefaultQuotaThreshold;
  LARGE_INTEGER DefaultQuotaLimit;
  ULONG         FileSystemControlFlags;
} FILE_FS_CONTROL_INFORMATION, *PFILE_FS_CONTROL_INFORMATION;

成員

FreeSpaceStartFiltering

內容索引精靈開始檔篩選所需的可用磁碟空間量下限,以位元組為單位。

FreeSpaceThreshold

索引服務繼續篩選檔和合併字組清單所需的可用磁碟空間量下限,以位元組為單位。 如果可用磁碟空間量低於此閾值,則會將警告訊息寫入 Microsoft Windows 應用程式事件記錄檔。 篩選和合併會停止,直到釋放空間為止。

FreeSpaceStopFiltering

內容索引精靈繼續檔篩選所需的可用磁碟空間量下限,以位元組為單位。 如果可用磁碟空間量低於此閾值,則會停止檔篩選。

DefaultQuotaThreshold

磁片區的預設每個使用者磁片配額警告閾值。

DefaultQuotaLimit

磁片區的預設每個使用者磁片配額限制。

FileSystemControlFlags

旗標的位元遮罩,可控制磁片區上使用者相關配額事件的配額強制執行和記錄。 記錄會在 Windows 應用程式事件記錄檔中建立專案。 下列一或多個相容組合:

檔案系統控制旗標 意義
FILE_VC_CONTENT_INDEX_DISABLED 如果設定,則會停用內容索引編制。
FILE_VC_LOG_QUOTA_LIMIT 如果設定,當使用者超過其指派的磁片配額限制時,就會建立事件記錄檔專案。
FILE_VC_LOG_QUOTA_THRESHOLD 如果設定,當使用者超過其指派的配額警告閾值時,就會建立事件記錄檔專案。
FILE_VC_LOG_VOLUME_LIMIT 如果設定,則會在超過磁片區的可用空間限制時建立事件記錄檔專案。
FILE_VC_LOG_VOLUME_THRESHOLD 如果設定,則會在超過磁片區的可用空間閾值時建立事件記錄檔專案。
FILE_VC_QUOTA_ENFORCE 如果已設定,則會在磁片區上強制執行配額。
FILE_VC_QUOTA_TRACK 如果設定,則會追蹤磁片區上的配額。
FILE_VC_QUOTAS_INCOMPLETE 如果設定,磁片區的配額資訊不完整。
FILE_VC_QUOTAS_REBUILDING 如果設定,檔案系統會重建磁片區的配額資訊。
 

此外,還會定義下列旗標遮罩。 這些適用于測試旗標值。

Mask
FILE_VC_QUOTA_MASK FILE_VC_QUOTA_ENFORCE |FILE_VC_QUOTA_TRACK
FILE_VC_QUOTA_NONE ~FILE_VC_QUOTA_ENFORCE & ~FILE_VC_QUOTA_TRACK
FILE_VC_VALID_MASK 上表中所有旗標的 ORed 組合。

備註

您可以使用下列任一種方式來查詢此資訊:

  • 呼叫 FltQueryVolumeInformationZwQueryVolumeInformationFile,將 FileFsControlInformation 當做 FileInformationClass 的值傳遞,並傳遞呼叫端配置、FILE_FS_CONTROL_INFORMATION結構化緩衝區作為 FileInformation的值。
  • 使用主要函式程式碼建立 IRP IRP_MJ_QUERY_VOLUME_INFORMATION。
需要FILE_READ_DATA存取磁片區,才能查詢這項資訊。

這項資訊可以透過下列其中一種方式來設定:

  • 呼叫 FltSetVolumeInformationZwSetVolumeInformationFile,傳遞 FileFsControlInformation 做為 FileInformationClass 的值,並傳遞呼叫端配置的已配置、FILE_FS_CONTROL_INFORMATION結構化緩衝區作為 FileInformation的值。
  • 使用主要函式程式碼建立 IRP IRP_MJ_SET_VOLUME_INFORMATION。
FILE_WRITE_DATA需要存取磁片區才能設定這項資訊。

FileInformation參數中傳遞至FltQueryVolumeInformation、FltSetVolumeInformationZwQueryVolumeInformationFile 或 ZwSetVolumeInformationFile的緩衝區大小必須至少為 (FILE_FS_CONTROL_INFORMATION) 大小。

此結構必須對齊 LONGLONG (8 位元組) 界限。

規格需求

   
標頭 ntifs.h (包含 Ntifs.h、Fltkernel.h)

另請參閱

FltQueryVolumeInformation

FltSetVolumeInformation

IRP_MJ_QUERY_VOLUME_INFORMATION

IRP_MJ_SET_VOLUME_INFORMATION

ZwQueryVolumeInformationFile

ZwSetVolumeInformationFile