共用方式為


cfGetPlaceholderRangeInfo 函式 (cfapi.h)

取得預留位置檔案或資料夾的範圍資訊。

語法

HRESULT CfGetPlaceholderRangeInfo(
  [in]            HANDLE                          FileHandle,
  [in]            CF_PLACEHOLDER_RANGE_INFO_CLASS InfoClass,
  [in]            LARGE_INTEGER                   StartingOffset,
  [in]            LARGE_INTEGER                   Length,
  [out]           PVOID                           InfoBuffer,
  [in]            DWORD                           InfoBufferLength,
  [out, optional] PDWORD                          ReturnedLength
);

參數

[in] FileHandle

要查詢之預留位置檔案的控制碼。

[in] InfoClass

預留位置資料範圍的類型。

[in] StartingOffset

資料範圍的起點位移。

[in] Length

資料範圍的長度。 提供者可以指定 CF_EOFLength ,指出要求資訊的範圍是從 StartingOffset 到檔案的結尾。

[out] InfoBuffer

將接收資料的緩衝區指標。 緩衝區是 CF_FILE_RANGE 結構的陣列,這些結構是位移/長度組,描述要求的範圍。

[in] InfoBufferLength

InfoBuffer的長度,以位元組為單位。

[out, optional] ReturnedLength

InfoBuffer中傳回之預留位置資料的長度。

傳回值

如果此函式成功,則會傳 S_OK 回 。 否則,它會傳回 HRESULT 錯誤碼。 下表列出一些常見的錯誤碼:

錯誤碼 意義
HRESULT_FROM_WIN32 ( ERROR_HANDLE_EOF ) 這表示StartingOffset> = 檔案結尾的位置。
HRESULT_FROM_WIN32 ( ERROR_MORE_DATA ) 這表示下一個 CF_FILE_RANGE 專案不適用於提供的緩衝區。 呼叫端應該確認是否收到任何專案,或未使用傳回 的 InfoBufferWritten 值。

備註

不同于採用檔案控制代碼的大部分預留位置 API,此 API 不會以任何方式修改檔案,因此檔案控制代碼只需要READ_ATTRIBUTES存取權。

規格需求

   
最低支援的用戶端 Windows 10 1709 版 [僅限傳統型應用程式]
最低支援的伺服器 Windows Server 2016 [僅限傳統型應用程式]
目標平臺 Windows
標頭 cfapi.h
程式庫 CldApi.lib
DLL CldApi.dll

另請參閱

CfGetPlaceholderRangeInfoForHydration