Compartilhar via


Determinar o status do gravador

Um solicitante precisa ter um entendimento bem definido sobre o status do gravador participante durante a criação da cópia de sombra e durante as operações de backup e restauração. Para isso, é recomendável:

IVssBackupComponents::PrepareForBackup

IVssBackupComponents::DoSnapshotSet

IVssBackupComponents::BackupComplete

Durante as operações de restauração, um solicitante deve consultar um gravador após a conclusão desses métodos:

IVssBackupComponents::PreRestore

IVssBackupComponents::PostRestore

  • As chamadas para IVssBackupComponents::GatherWriterStatus que não fazem parte de uma sequência de backup ou restauração bem definida não fornecem uma imagem confiável do status do gravador, pois elas podem refletir condições que não indicam falha na operação atual, como:
    • Falha de uma criação de cópia de sombra anterior
    • Erro em uma operação de backup ou restauração antecipada
    • Um gravador sem resposta atualmente processando um evento

Portanto, os desenvolvedores não devem confiar no status do gravador retornado por processos diferentes do solicitante ou tentar monitorar o progresso de uma instância da interface IVssBackupComponents com outra (possivelmente em um thread separado).

Observe que para operações de backup, onde é necessário examinar os Documentos de Metadados do Gravador dos gravadores, não há necessidade de uma chamada do solicitante para IVssBackupComponents::GatherWriterStatus e IVssBackupComponents::GetWriterStatus após a geração e manipulação do evento Identify causado por IVssBackupComponents::GatherWriterMetdata.

IVssBackupComponents::GetWriterStatus relata apenas o status dos gravadores cujos metadados foram fornecidos ao VSS pelos manipuladores de eventos Identify dos gravadores, CVssWriter::OnIdentify (e retornados ao solicitante por IVssBackupComponents::GetWriterMetadataCount e IVssBackupComponents::GetWriterMetadata).

Se a implementação de um gravador de CVssWriter::OnIdentify falhar, os metadados desse gravador não farão parte da lista de Documentos de Metadados do Gravador fornecidos ao VSS, nenhuma informação de status estará disponível e a chamada será redundante.

Para operações de restauração, em que o solicitante não precisa examinar os Documentos de Metadados do Gravador dos gravadores em execução, chamar IVssBackupComponents::GatherWriterStatus e IVssBackupComponents::GetWriterStatus pode ser uma maneira mais eficiente de determinar quais gravadores estão sendo executados.