CfGetTransferKey 함수(cfapi.h)
CfGetTransferKey는 CfExecute API를 사용하여 자리 표시자로 데이터 전송을 시작하는 데 필요한 TransferKey를 반환합니다.
구문
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 액세스 권한이 있어야 합니다. 그렇지 않으면 HRESULT(ERROR_CLOUD_FILE_ACCESS_DENIED)로 CfGetTransferKey가 실패합니다.
TransferKey는 가져오는 데 사용된 FileHandle이 열려 있는 한 유효합니다. 동기화 공급자는 자리 표시자 파일 또는 폴더에서 원하는 작업을 수행하려면 TransferKey 를 CfExecute 에 전달해야 합니다. TransferKey가 더 이상 사용되지 않는 경우 CfReleaseTransferKey를 사용하여 해제해야 합니다.
요구 사항
요구 사항 | 값 |
---|---|
지원되는 최소 클라이언트 | Windows 10 버전 1709 [데스크톱 앱만 해당] |
지원되는 최소 서버 | Windows Server 2016 [데스크톱 앱만 해당] |
대상 플랫폼 | Windows |
헤더 | cfapi.h |
라이브러리 | CldApi.lib |
DLL | CldApi.dll |