다음을 통해 공유


PRJ_GET_FILE_DATA_CB 콜백 함수(projectedfslib.h)

파일의 기본 데이터 스트림의 콘텐츠를 요청합니다.

구문

PRJ_GET_FILE_DATA_CB PrjGetFileDataCb;

HRESULT PrjGetFileDataCb(
  [in] const PRJ_CALLBACK_DATA *callbackData,
  [in] UINT64 byteOffset,
  [in] UINT32 length
)
{...}

매개 변수

[in] callbackData

작업에 대한 정보입니다. 이 콜백을 구현하려면 다음 callbackData 멤버가 필요합니다.

FilePathName 데이터를 반환해야 하는 공급자의 백업 저장소에 있는 파일의 경로를 식별합니다. 이는 파일이 자리 표시자를 처음 만들 때 가진 이름을 반영합니다. 그 이후로 이름이 변경된 경우 FilePathName 은 현재(이름 바꾸기 후) 이름이 아닌 원래(이름 바꾸기 전) 이름을 식별합니다.
DataStreamId이 파일 스트림과 연결할 고유 값입니다. 공급자는 이 콜백 처리의 일부로 파일 데이터를 제공할 때 PrjWriteFileDatadataStreamId 매개 변수에 이 값을 전달해야 합니다.
VersionInfo 공급자 가 이 파일에 대한 자리 표시자를 만들 때 제공한 PRJ_PLACEHOLDER_VERSION_INFO 정보를 제공합니다. 이렇게 하면 공급자가 반환할 파일 콘텐츠의 버전을 결정하는 데 도움이 될 수 있습니다. 파일 이름이 변경되고 공급자가 이름을 추적하는 경우 공급자가 요청되는 파일의 내용을 결정하는 데 도움이 될 수도 있습니다.

공급자는 콜백이 실행되는 동안에만 이 버퍼에 액세스할 수 있습니다. 작업을 보류하려고 하고 이 버퍼의 데이터가 필요한 경우 자체 복사본을 만들어야 합니다.

[in] byteOffset

파일의 시작 부분에서 요청된 데이터의 오프셋(바이트)입니다. 공급자는 이 오프셋 또는 그 이전에 시작하는 파일 데이터를 반환해야 합니다.

[in] length

요청된 파일 데이터의 바이트 수입니다. 공급자는 byteOffset으로 시작하는 이 많은 바이트 이상의 파일 데이터를 반환해야 합니다.

반환 값

반환 코드 Description
S_OK
공급자가 요청된 모든 데이터를 성공적으로 반환했습니다.
HRESULT_FROM_WIN32(ERROR_IO_PENDING)
공급자는 나중에 작업을 완료하려고 합니다.
 

공급자가 작업에 실패하는 경우 적절한 HRESULT 오류 코드입니다.

설명

ProjFS가 데이터를 받으면 파일에 기록하여 하이드레이션 자리 표시자로 변환합니다.

이 콜백을 처리하기 위해 공급자는 PrjWriteFileData 를 하나 이상 호출하여 ProjFS에 파일의 기본 데이터 스트림의 요청된 콘텐츠를 제공합니다. 그런 다음 공급자가 콜백을 완료합니다.

요구 사항

요구 사항
지원되는 최소 클라이언트 Windows 10, 버전 1809[데스크톱 앱만 해당]
지원되는 최소 서버 Windows Server [데스크톱 앱만 해당]
대상 플랫폼 Windows
헤더 projectedfslib.h