共用方式為


MmCanFileBeTruncated 函式 (ntifs.h)

MmCanFileBeTruncated 例程會檢查是否可以截斷檔案。

語法

BOOLEAN MmCanFileBeTruncated(
  [in]           PSECTION_OBJECT_POINTERS SectionPointer,
  [in, optional] PLARGE_INTEGER           NewFileSize
);

參數

[in] SectionPointer

結構的指標,其中包含檔案對象的區段對象指標。

[in, optional] NewFileSize

變數的指標,指定要截斷檔案的位元元組大小。 如果此參數為 NULL,則會假設長度為零,MmCanFileBeTruncated 檢查是否可以截斷整個檔案。

傳回值

mmCanFileBeTruncated 可截斷檔案時傳回 TRUE;否則為 FALSE。

言論

MmCanFileBeTruncated 必須一律呼叫,才能截斷檔案。

如果下列任一項為 true,則無法截斷檔案(且 MmCanFileBeTruncated 會傳回 FALSE:

  • 檔案有映像區段。

  • 檔案的數據區段上有一或多個未處理的寫入探查。

  • 在截斷範圍內,NewFileSize所決定的檔案數據區段有對應的檢視。

  • 一或多個使用者會保存檔案數據區段的參考,NewFileSize<= 目前的檔案大小。

要求

要求 價值
目標平臺 普遍
標頭 ntifs.h (include Ntifs.h)
連結庫 NtosKrnl.lib
DLL NtosKrnl.exe
IRQL < DISPATCH_LEVEL

另請參閱

CcCoherencyFlushAndPurge

CcPurgeCacheSection

CcSetFileSizesEx

mmFlushImagesection