Compartilhar via


Trabalhando com novos destinos durante a restauração

Um solicitante pode precisar restaurar arquivos para um local indicado por algo diferente do caminho padrão de um conjunto de arquivos ou seu mapeamento de localização alternativo. Há muitos motivos pelos quais isso pode acontecer— por exemplo, nenhum destino de restauração estava acessível ou um usuário solicitante solicita intencionalmente que os arquivos fossem restaurados para algum local desconhecido anteriormente. Nesse caso, o solicitante usa o novo mecanismo de destino para indicar aos gravadores que restaurou um arquivo para uma área diferente no disco.

Nem todos os gravadores dão suporte a um solicitante que altera o destino de restauração de um arquivo. Um solicitante precisa verificar o suporte ao gravador verificando a máscara de esquema de backup do gravador (retornada por IVssExamineWriterMetadata::GetBackupSchema) e verificando se ela contém o sinalizador VSS_BS_WRITER_SUPPORTS_NEW_TARGET.

O solicitante indica essa restauração por meio do método IVssBackupComponents::AddNewTarget . Além de especificar uma especificação de arquivo e um destino de restauração original e novo, o solicitante especifica informações de componente — um caminho lógico e um nome de componente.

Quais informações do componente são usadas depende se o componente que gerencia ou não o arquivo que tem um novo destino adicionado foi explicitamente incluído ou incluído implicitamente no backup.

Se o componente de gerenciamento tiver sido incluído explicitamente, suas informações serão usadas. Se o componente de gerenciamento tiver sido incluído implicitamente, ele será um subcomponente em um conjunto de componentes. Nesse caso, as informações do componente definidor do conjunto de componentes são usadas.

Durante o tratamento do evento PostRestore, os gravadores devem marcar para ver se algum de seus arquivos foi restaurado para um novo local. Isso pode ser feito usando os métodos IVssComponent::GetNewTargetCount e IVssComponent::GetNewTarget .

A instância da interface IVssComponent usada depende se o componente de gerenciamento do arquivo foi adicionado explicitamente ou implicitamente ao backup.