CfHydratePlaceholder 函数 (cfapi.h)

通过确保指定的字节范围存在于占位符的磁盘上来冻结占位符文件。 这仅适用于文件。

语法

HRESULT CfHydratePlaceholder(
  [in]                HANDLE           FileHandle,
  [in]                LARGE_INTEGER    StartingOffset,
  [in]                LARGE_INTEGER    Length,
  [in]                CF_HYDRATE_FLAGS HydrateFlags,
  [in, out, optional] LPOVERLAPPED     Overlapped
);

参数

[in] FileHandle

要水合的占位符文件的句柄。 属性或无访问句柄就足够了。

[in] StartingOffset

占位符文件数据的起始点偏移量。

[in] Length

占位符文件的长度(以字节为单位),该占位符文件在 API 成功完成后,其数据必须在磁盘上本地可用。 定义为 -1) 的 CF_EOF (长度表示文件结束。 对于占位符中不存在的任何子范围,平台将从同步提供程序提取数据并将其存储在占位符的磁盘上。

[in] HydrateFlags

占位符水合标志。 水合物标志 必须设置为 CF_HYDRATE_FLAG_NONE

[in, out, optional] Overlapped

指定并结合异步 FileHandle 时, Overlapped 允许平台异步执行 CfHydratePlaceholder 调用。 有关更多详细信息,请参阅 备注

如果未指定,平台将同步执行 API 调用,而不考虑句柄的创建方式。

返回值

如果此函数成功,则返回 S_OK。 否则,将返回 HRESULT 错误代码。

注解

调用方必须具有 READ_DATAWRITE_DAC 访问要水合的占位符的访问权限。

如果 API 在异步使用 Overlapped 时返回HRESULT_FROM_WIN32 (ERROR_IO_PENDING) ,则调用方可以使用 GetOverlappedResult 等待。

要求

要求
最低受支持的客户端 Windows 10版本 1709 [仅限桌面应用]
最低受支持的服务器 Windows Server 2016 [仅限桌面应用]
目标平台 Windows
标头 cfapi.h
Library CldApi.lib
DLL CldApi.dll

另请参阅

GetOverlappedResult