Compartilhar via


Método IVssBackupComponentsEx::SetSelectedForRestoreEx (vsbackup.h)

O método SetSelectedForRestoreEx indica se o componente selecionável especificado está selecionado para restauração em uma instância de gravador especificada.

Sintaxe

HRESULT SetSelectedForRestoreEx(
  [in] VSS_ID             writerId,
  [in] VSS_COMPONENT_TYPE ct,
  [in] LPCWSTR            wszLogicalPath,
  [in] LPCWSTR            wszComponentName,
  [in] bool               bSelectedForRestore,
  [in] VSS_ID             instanceId
);

Parâmetros

[in] writerId

GUID (identificador global exclusivo) da classe de gravador.

[in] ct

Tipo do componente. Consulte VSS_COMPONENT_TYPE para obter os valores possíveis.

[in] wszLogicalPath

Cadeia de caracteres largos terminada em nulo que contém o caminho lógico do componente. Para obter mais informações, consulte Caminhos lógicos de componentes.

O valor da cadeia de caracteres que contém o caminho lógico usado aqui deve ser o mesmo usado quando o componente foi adicionado.

O caminho lógico pode ser NULL.

Não há restrições sobre os caracteres que podem aparecer em um caminho lógico não NULL .

[in] wszComponentName

Cadeia de caracteres largos terminada em nulo que contém o nome do componente.

A cadeia de caracteres não pode ser NULL e deve conter o mesmo nome do componente usado quando o componente foi adicionado ao conjunto de backup usando o método IVssBackupComponents::AddComponent .

[in] bSelectedForRestore

Se o valor desse parâmetro for true, o componente selecionado foi selecionado para restauração. Se o valor for false, o componente selecionado não foi selecionado para restauração.

[in] instanceId

GUID da instância do gravador.

O valor padrão desse parâmetro é GUID_NULL.

Retornar valor

Veja a seguir os códigos de retorno válidos para esse método.

Valor Significado
S_OK
Indicou com êxito que o componente especificado foi selecionado para ser restaurado.
E_INVALIDARG
Um dos valores de parâmetro não é válido.
E_OUTOFMEMORY
O chamador está sem memória ou outros recursos do sistema.
VSS_E_BAD_STATE
O objeto de componentes de backup não é inicializado, esse método foi chamado durante uma operação de restauração ou esse método não foi chamado dentro da sequência correta.
VSS_E_OBJECT_NOT_FOUND
O componente que está sendo selecionado não existe no Documento de Componentes de Backup ou uma instância dinâmica do gravador correspondente a esse componente não está em execução no sistema.
VSS_E_INVALID_XML_DOCUMENT
O documento XML não é válido. Verifique o log de eventos para obter detalhes. Para obter mais informações, consulte Tratamento de eventos e erros no VSS.
VSS_E_UNEXPECTED
Erro inesperado. O código de erro é registrado no arquivo de log de erros. Para obter mais informações, consulte Tratamento de eventos e erros no VSS.

Windows Server 2008, Windows Vista, Windows Server 2003 e Windows XP: Esse valor não tem suporte até o Windows Server 2008 R2 e o Windows 7. E_UNEXPECTED é usado.

Comentários

SetSelectedForRestoreEx, que move um componente para uma instância de gravador diferente, só pode ser chamado para um gravador que dá suporte à execução de várias instâncias de gravador com a mesma ID de classe e dá suporte a um solicitante movendo um componente para uma instância de gravador diferente no momento da restauração. Para determinar se um gravador fornece esse suporte, chame o método IVssExamineWriterMetadata::GetBackupSchema .

SetSelectedForRestoreEx tem significado apenas para restaurações que ocorrem no modo de componente.

SetSelectedForRestoreEx só pode ser chamado para componentes que foram explicitamente adicionados ao documento de backup no momento do backup usando AddComponent. A restauração de um componente que foi implicitamente selecionado para backup como parte de um conjunto de componentes deve ser feita chamando SetSelectedForRestoreEx no componente ancestral mais próximo que foi adicionado ao documento. Se apenas os dados desse componente devem ser restaurados, isso deve ser feito por meio do método IVssBackupComponents::AddRestoreSubcomponent ; isso só poderá ser feito se o componente for selecionável para restauração (consulte Trabalhando com selebilidade e caminhos lógicos).

Esse método deve ser chamado antes do método IVssBackupComponents::P reRestore .

A distinção entre os parâmetros instanceId e writerID é necessária porque é possível que várias instâncias do mesmo gravador estejam em execução no computador.

Se o valor do parâmetro instanceId for GUID_NULL, isso será equivalente a chamar o método IVssBackupComponents::SetSelectedForRestore .

O parâmetro instanceId é usado para especificar que o componente deve ser restaurado para uma instância de gravador diferente. Se o valor do parâmetro instanceId não for GUID_NULL, ele deverá corresponder à ID de instância de uma instância de gravador com a mesma ID de classe de gravador especificada no parâmetro writerID .

O identificador de classe, o identificador de instância e o nome da instância de um gravador podem ser encontrados chamando o método IVssExamineWriterMetadataEx::GetIdentityEx .

Requisitos

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

Confira também

IVssBackupComponents::SetSelectedForRestore

IVssBackupComponentsEx

IVssExamineWriterMetadata::GetBackupSchema

IVssExamineWriterMetadataEx::GetIdentityEx