CfGetTransferKey 函数 (cfapi.h)
CfGetTransferKey 返回 TransferKey,这是使用 CfExecute API 启动将数据传输到占位符所必需的。
语法
HRESULT CfGetTransferKey(
[in] HANDLE FileHandle,
[out] CF_TRANSFER_KEY *TransferKey
);
参数
[in] FileHandle
占位符的文件句柄。
[out] TransferKey
要提供服务的占位符的不透明句柄。
返回值
如果此函数成功,则返回 S_OK
。 否则,将返回 HRESULT 错误代码。
注解
此 API 适用于可能希望主动启动数据传输到占位符的同步提供程序,作为调用 CfHydratePlaceholder 的替代方法。 CfGetTransferKey 返回提取数据回调将返回的相同 TransferKey 。 然后,同步提供程序可以在后续调用中传递 TransferKey 到 CfExecute API。 通过这种方式,数据传输由同步提供程序而不是筛选器驱动。
同步提供程序应READ_DATA或WRITE_DAC访问要获取其传输密钥的文件,否则 CfGetTransferKey 将失败,并显示 HRESULT (ERROR_CLOUD_FILE_ACCESS_DENIED) 。
只要用于获取它的 FileHandle 保持打开状态,TransferKey 就有效。 同步提供程序必须将 TransferKey 传递给 CfExecute ,才能对占位符文件或文件夹执行所需的操作。 不再使用 TransferKey 时,必须使用 CfReleaseTransferKey 将其释放。
要求
要求 | 值 |
---|---|
最低受支持的客户端 | Windows 10版本 1709 [仅限桌面应用] |
最低受支持的服务器 | Windows Server 2016 [仅限桌面应用] |
目标平台 | Windows |
标头 | cfapi.h |
Library | CldApi.lib |
DLL | CldApi.dll |