Compartilhar via


Método CVssWriterEx::OnIdentifyEx (vswriter.h)

Retorna um ponteiro para um objeto IVssCreateWriterMetadataEx .

OnIdentifyEx é um método virtual. Ele é implementado pela classe base CVssWriterEx , mas pode ser substituído por classes derivadas.

Sintaxe

bool OnIdentifyEx(
  [in] IVssCreateWriterMetadataEx *pMetadata
);

Parâmetros

[in] pMetadata

Um ponteiro para um objeto IVssCreateWriterMetadataEx .

Valor retornado

Conforme implementado pela classe base, OnIdentifyEx sempre retorna true.

Qualquer outra implementação desse método deve retornar true , exceto no caso de um erro fatal. Se ocorrer um erro fatal, o método deverá retornar false.

Em todos os casos em que ocorre uma falha, incluindo erros não virtuais, o método deve gravar uma entrada detalhada no log de eventos para relatar o motivo exato da falha.

Comentários

O método OnIdentifyEx é idêntico ao método OnIdentify , exceto pelo fato de retornar um ponteiro de interface IVssCreateWriterMetadataEx em vez de um ponteiro de interface IVssCreateWriterMetadata no parâmetro pMetadata . Um gravador pode substituir OnIdentify ou OnIdentifyEx, mas não ambos.

Os gravadores nunca devem gerar uma exceção desse método ou de qualquer outro método de retorno de chamada CVssWriter(Ex)::OnXxx .

Os gravadores nunca devem chamar o método CVssWriter::SetWriterFailure do método OnIdentify ou OnIdentifyEx .

Se esse método chamar o método CVssWriterEx2::GetSessionId , ele deverá fazer isso no mesmo thread que chamou esse método. Para obter mais informações, consulte Tratamento de eventos do gravador.

Em resposta a um evento Identifique gerado por outro aplicativo, um gravador chama OnIdentifyEx para criar um Documento de Metadados do Gravador que contém informações sobre os componentes que ele gerencia usando a interface IVssCreateWriterMetadataEx .

O aplicativo que gerou o evento Identifi recupera o Documento de Metadados do Gravador e examina as informações de componente do gravador usando a interface IVssExamineWriterMetadata .

Um evento Identifi é necessário antes dos eventos que compõem uma sequência de backup ou restauração. Portanto, OnIdentifyEx normalmente é chamado para lidar com um evento Identifi em resposta à chamada de um solicitante para IVssBackupComponents::GatherWriterMetadata como parte de uma operação de backup ou restauração.

No entanto, um evento identifique por si só não faz parte da sequência de eventos que compõem uma sequência de backup ou restauração e o serviço VSS não impede a geração de eventos de Identificação , mesmo quando uma sequência de backup ou restauração está em andamento. Por exemplo, os aplicativos de gerenciamento do VSS usam o evento Identifi para determinar e exibir o estado dos gravadores no sistema.

Por esse motivo, os gravadores nunca devem usar sua implementação de OnIdentifyEx de nenhuma das seguintes maneiras:

  • Como o início de sua manipulação de uma sequência de backup ou restauração
  • Para definir ou manter informações sobre o estado do gravador
Para obter mais informações sobre interações do gravador com eventos, consulte Tratamento de eventos do gravador.

Durante os eventos PrepareForBackup, PrepareForSnapshot e PostSnapshot , um gravador pode usar o método GetIdentifyInformation para obter os metadados relatados anteriormente pelo método OnIdentifyEx do gravador.

O ciclo de vida do objeto IVssCreateWriterMetadataEx para o qual o parâmetro pMetadata aponta é gerenciado pela infraestrutura do VSS.

Requisitos

   
Cliente mínimo com suporte Windows Vista [somente aplicativos da área de trabalho]
Servidor mínimo com suporte Windows Server 2008 [somente aplicativos da área de trabalho]
Plataforma de Destino Windows
Cabeçalho vswriter.h (inclua Vss.h, VsWriter.h)
Biblioteca VssApi.lib

Confira também

CVssWriterEx

CVssWriterEx::GetIdentifyInformation

IVssCreateWriterMetadataEx