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 を 返します。 その後、同期プロバイダーは、後続の CfExecute API の呼び出しで TransferKey を渡すことができます。 このように、データの転送は、フィルターではなく同期プロバイダーによって行われます。
同期プロバイダーには、転送キーを取得するファイルへのREAD_DATAまたはWRITE_DACアクセス権が必要です。または、HRESULT(ERROR_CLOUD_FILE_ACCESS_DENIED) でCfGetTransferKey が失敗します。
TransferKey は、取得に使用された FileHandle が開いたままである限り有効です。 同期プロバイダーは、プレースホルダー ファイルまたはフォルダーに対して目的の操作を実行するために 、TransferKey を CfExecute に渡す必要があります。 TransferKey が使用されなくなった場合は、CfReleaseTransferKey を使用して解放する必要があります。
要件
要件 | 値 |
---|---|
サポートされている最小のクライアント | Windows 10バージョン 1709 [デスクトップ アプリのみ] |
サポートされている最小のサーバー | Windows Server 2016 [デスクトップ アプリのみ] |
対象プラットフォーム | Windows |
ヘッダー | cfapi.h |
Library | CldApi.lib |
[DLL] | CldApi.dll |