CfSetPinState 函数 (cfapi.h)

此函数设置占位符的引脚状态,该状态表示用户的意图。 任何应用程序(而不仅仅是同步提供程序)都可以调用此函数。

Syntax

HRESULT CfSetPinState(
  [in]                HANDLE           FileHandle,
  [in]                CF_PIN_STATE     PinState,
  [in]                CF_SET_PIN_FLAGS PinFlags,
  [in, out, optional] LPOVERLAPPED     Overlapped
);

参数

[in] FileHandle

占位符文件的句柄。 平台将作与其他活动请求正确同步。 属性或无访问句柄已足够。 调用方必须具有对占位符 READ_DATAWRITE_DAC 访问权限。 否则,该作会失败 并STATUS_CLOUD_FILE_ACCESS_DENIED

[in] PinState

占位符文件的引脚状态。 有关有效 PinState 值的列表,请参阅 CF_PIN_STATE

[in] PinFlags

引脚状态标志。 将 PinFlags 设置为以下值之一:

  • 如果指定 CF_SET_PIN_FLAG_RECURSE,平台会将引脚状态应用于 FileHandle ,并且每个文件都以递归方式应用于该文件下方。 仅当 FileHandle 是目录的句柄时,此标志才相关。
  • 如果指定 CF_SET_PIN_FLAG_RECURSE_ONLY,则平台将固定状态以递归方式应用于 FileHandle 下的每个文件,但不适用于 FileHandle 本身。
  • 如果指定 CF_SET_PIN_FLAG_RECURSE_STOP_ON_ERROR,则平台在遇到第一个错误时停止递归。 否则,平台将跳过错误并继续递归。

使用 CF_SET_PIN_FLAG_NONE 指定无标志。

[in, out, optional] Overlapped

允许异步执行调用。 有关更多详细信息,请参阅 “备注 ”部分。

返回值

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

注解

在指定异步 FileHandle 并将其与 重叠合并时,平台可以异步执行调用。

必须使用要等待的事件初始化重叠结构。 如果此函数返回 HRESULT_FROM_WIN32(ERROR_IO_PENDING),则可以使用 GetOverlappedResult 等待。 如果未指定此参数,则无论如何创建句柄,平台都会同步执行 API 调用。

要求

Requirement 价值
最低支持的客户端 Windows 10 版本 1709 [仅限桌面应用]
支持的最低服务器 Windows Server 2016 [仅限桌面应用]
目标平台 Windows操作系统
Header cfapi.h
Library CldApi.lib
DLL CldApi.dll

另请参阅

GetOverlappedResult

CF_PIN_STATE

CF_SET_PIN_FLAGS