Função WofSetFileDataLocation (wofapi.h)
Usada para alterar o backup de um arquivo que foi feito por um arquivo físico para um backup feito pelo provedor de dados do sistema.
Sintaxe
HRESULT WofSetFileDataLocation(
[in] HANDLE FileHandle,
[in] ULONG Provider,
[in] PVOID ExternalFileInfo,
[in] ULONG Length
);
Parâmetros
[in] FileHandle
Um identificador para um arquivo aberto com CreateFile ou uma API semelhante.
[in] Provider
Indica qual provedor está fazendo backup desse arquivo. Os provedores definidos no momento são:
WOF_PROVIDER_WIM | Indica que os dados do arquivo devem ser obtidos de um arquivo WIM. No acesso, os dados são extraídos de forma transparente do arquivo WIM e fornecidos aos aplicativos. Se o conteúdo do arquivo for modificado, os dados serão descompactados de forma transparente e o arquivo será restaurado para o mesmo formulário físico que tinha se essa API não fosse usada. |
WOF_PROVIDER_FILE | Indica que os dados do arquivo devem ser compactados e armazenados com o próprio arquivo. No acesso, os dados são descompactados de forma transparente e fornecidos aos aplicativos. Se o conteúdo do arquivo for modificado, os dados serão descompactados de forma transparente e o arquivo será restaurado para o mesmo formulário físico que tinha se essa API não fosse usada. Esse provedor requer Windows 10. |
[in] ExternalFileInfo
Fornece dados específicos para o provedor especificado. As estruturas de dados para cada provedor definido são:
WOF_PROVIDER_WIM | WIM_EXTERNAL_FILE_INFO |
WOF_PROVIDER_FILE | WOF_FILE_COMPRESSION_INFO |
[in] Length
Especifica o comprimento dos dados específicos do provedor, em bytes. Isso deve corresponder às estruturas definidas acima:
WOF_PROVIDER_WIM | sizeof(WIM_EXTERNAL_FILE_INFO) |
WOF_PROVIDER_FILE | sizeof(WOF_FILE_COMPRESSION_INFO) |
Retornar valor
Essa função retorna um HRESULT que indica êxito ou o motivo da falha.
Comentários
Ao usar WOF_PROVIDER_FILE, a operação pode falhar com ERROR_COMPRESSION_NOT_BENEFICIAL. Isso indica que foi feita uma tentativa de compactar os dados, mas nenhum espaço em disco foi salvo, portanto, o arquivo não foi compactado. Para a maioria dos aplicativos, isso pode ser tratado como uma condição de sucesso.
Requisitos
Requisito | Valor |
---|---|
Plataforma de Destino | Windows |
Cabeçalho | wofapi.h |
Biblioteca | Wofutil.lib |
DLL | Wofutil.dll |