PRJ_GET_FILE_DATA_CB função de retorno de chamada (projectedfslib.h)
Solicita o conteúdo do fluxo de dados primário de um arquivo.
Sintaxe
PRJ_GET_FILE_DATA_CB PrjGetFileDataCb;
HRESULT PrjGetFileDataCb(
[in] const PRJ_CALLBACK_DATA *callbackData,
[in] UINT64 byteOffset,
[in] UINT32 length
)
{...}
Parâmetros
[in] callbackData
Informações sobre a operação. Os seguintes membros callbackData são necessários para implementar esse retorno de chamada:
- FilePathName Identifica o caminho para o arquivo no repositório de backup do provedor para o qual os dados devem ser retornados. Observe que isso reflete o nome que o arquivo tinha quando seu espaço reservado foi criado pela primeira vez. Se ele tiver sido renomeado desde então, FilePathName identificará o nome original (pré-renomear), não o nome atual (pós-renomeação).
- DataStreamIdO valor exclusivo a ser associado a esse fluxo de arquivos. O provedor deve passar esse valor no parâmetro dataStreamId de PrjWriteFileData ao fornecer dados de arquivo como parte do tratamento desse retorno de chamada.
- Versioninfo Fornece as informações PRJ_PLACEHOLDER_VERSION_INFO que o provedor forneceu quando criou o espaço reservado para esse arquivo. Isso pode ajudar o provedor a determinar qual versão do conteúdo do arquivo retornar. Se o arquivo tiver sido renomeado e o provedor rastrear renomeações, isso também poderá ajudar o provedor a determinar qual conteúdo do arquivo está sendo solicitado.
O provedor só pode acessar esse buffer enquanto o retorno de chamada estiver em execução. Se quiser aguardar a operação e exigir dados desse buffer, ele deverá fazer sua própria cópia dele.
[in] byteOffset
Deslocamento dos dados solicitados, em bytes, desde o início do arquivo. O provedor deve retornar dados de arquivo começando em ou antes desse deslocamento
[in] length
Número de bytes de dados de arquivo solicitados. O provedor deve retornar pelo menos muitos bytes de dados de arquivo começando com byteOffset.
Retornar valor
Código de retorno | Descrição |
---|---|
|
O provedor retornou com êxito todos os dados solicitados. |
|
O provedor deseja concluir a operação posteriormente. |
Um código de erro HRESULT apropriado se o provedor falhar na operação.
Comentários
Quando o ProjFS receber os dados, ele os gravará no arquivo para convertê-los em um espaço reservado hidratado.
Para lidar com esse retorno de chamada, o provedor emite uma ou mais chamadas para PrjWriteFileData para dar ao ProjFS o conteúdo solicitado do fluxo de dados primário do arquivo. Em seguida, o provedor conclui o retorno de chamada.
Requisitos
Requisito | Valor |
---|---|
Cliente mínimo com suporte | Windows 10, versão 1809 [somente aplicativos da área de trabalho] |
Servidor mínimo com suporte | Windows Server [somente aplicativos da área de trabalho] |
Plataforma de Destino | Windows |
Cabeçalho | projectedfslib.h |