FILE_BASIC_INFORMATION結構 (wdm.h)

FILE_BASIC_INFORMATION 結構包含檔案的時間戳和基本屬性。 它會作為查詢或設定檔案資訊的例程自變數。

語法

typedef struct _FILE_BASIC_INFORMATION {
  LARGE_INTEGER CreationTime;
  LARGE_INTEGER LastAccessTime;
  LARGE_INTEGER LastWriteTime;
  LARGE_INTEGER ChangeTime;
  ULONG         FileAttributes;
} FILE_BASIC_INFORMATION, *PFILE_BASIC_INFORMATION;

成員

CreationTime

指定檔案建立的時間。

LastAccessTime

指定上次存取檔案的時間。

LastWriteTime

指定上次寫入檔案的時間。

ChangeTime

指定上次變更檔案的時間。

FileAttributes

指定一或多個 FILE_ATTRIBUTE_XXX 旗標。 如需這些旗標的描述,請參閱 Microsoft Windows SDK 中的 檔案屬性常數

言論

無法設定或傳回FILE_ATTRIBUTE_NORMAL旗標與其他任何屬性。 所有其他 FileAttributes 值都會覆寫此屬性。

CreationTimeLastAccessTimeLastWriteTimeChangeTime 的時間值會以絕對系統時間格式表示。 絕對系統時間是公曆 1601 年初以來的 100 奈秒間隔數目。

如果您為 FILE_BASIC_INFORMATION 結構的任何 XxxTime 成員指定零的值 ,則 ZwSetInformationFile 函式會保留該時間的檔案目前設定。

文件系統會更新 LastAccessTimeLastWriteTime的值,並在檔案上執行 I/O 作業之後,視需要 ChangeTime 成員。 驅動程式或應用程式可以藉由將適當的成員設定為 -1,要求檔案系統不會更新在呼叫端的檔案句柄上執行的 I/O 作業的其中一或多個成員。 呼叫端可以將這三個成員的其中一個、全部或任何其他組合設定為 -1。 只有設定為 -1 的成員不會受到檔句柄上的 I/O 作業影響;其他成員將會視需要更新。 在NTFS和ReFS系統上,將適當的成員設定為 -2,即可還原檔句柄上的時間戳更新。

若要設定這個結構的成員,呼叫端必須具有檔案FILE_WRITE_ATTRIBUTES存取權。

要求

要求 價值
標頭 wdm.h (包括 Wdm.h、Ntddk.h、Ntifs.h)

另請參閱

KeQuerySystemTime

ZwCreateFile

ZwQueryInformationFile

ZwSetInformationFile