Compartilhar via


Método IVssCreateExpressWriterMetadata::AddComponent (vswriter.h)

Adiciona um grupo de arquivos ao conjunto de componentes de um gravador expresso a ser copiado em backup.

Sintaxe

HRESULT AddComponent(
  [in] VSS_COMPONENT_TYPE ct,
  [in] LPCWSTR            wszLogicalPath,
  [in] LPCWSTR            wszComponentName,
  [in] LPCWSTR            wszCaption,
  [in] const BYTE         *pbIcon,
  [in] UINT               cbIcon,
  [in] bool               bRestoreMetadata,
  [in] bool               bNotifyOnBackupComplete,
  [in] bool               bSelectable,
  [in] bool               bSelectableForRestore,
  [in] DWORD              dwComponentFlags
);

Parâmetros

[in] ct

Um VSS_COMPONENT_TYPE valor de enumeração que especifica o tipo do componente. Somente VSS_CT_FILEGROUP tem suporte para esse parâmetro.

[in] wszLogicalPath

Um ponteiro para uma cadeia de caracteres largos terminada em nulo que contém o caminho lógico do banco de dados ou grupo de arquivos. Para obter mais informações, consulte Caminhos lógicos de componentes.

Esse parâmetro é opcional e pode ser NULL.

[in] wszComponentName

Um ponteiro para uma cadeia de caracteres largos terminada em nulo que contém o nome do componente. Essa cadeia de caracteres não está localizada.

Esse parâmetro é necessário e não pode ser NULL. A cadeia de caracteres não pode conter barras invertidas.

[in] wszCaption

Um ponteiro para uma cadeia de caracteres largos terminada em nulo que contém uma descrição (também chamada de "nome amigável") para o componente. Essa cadeia de caracteres pode ser localizada e, portanto, os solicitantes devem assumir que ela está localizada.

Esse parâmetro é opcional e pode ser NULL. A cadeia de caracteres pode conter barras invertidas.

[in] pbIcon

Um ponteiro para um bitmap do ícone que representa o banco de dados, a ser exibido em uma interface do usuário. O tamanho, em bytes, do buffer é especificado pelo parâmetro cbIcon .

Esse parâmetro é opcional e pode ser NULL.

[in] cbIcon

O tamanho do buffer, em bytes. Se o parâmetro pbIcon for NULL, cbIcon deverá ser zero.

[in] bRestoreMetadata

Esse parâmetro é reservado para uso futuro e deve ser sempre definido como false.

[in] bNotifyOnBackupComplete

Esse parâmetro é reservado para uso futuro e deve ser sempre definido como false.

[in] bSelectable

Um valor booliano que indica se o componente pode ser copiado em backup opcionalmente (o que significa que ele pode ser excluído do backup) ou sempre é feito backup quando qualquer um dos componentes do gravador é copiado em backup. Esse parâmetro deve ser definido como
true se o componente puder ser copiado em backup seletivamente ou false se o componente tiver backup quando qualquer um dos componentes tiver backup.

[in] bSelectableForRestore

Um valor booliano que determina se um componente pode ser restaurado individualmente quando não foi incluído explicitamente no documento de backup. Se o componente tiver sido adicionado explicitamente ao documento de backup, ele sempre poderá ser selecionado individualmente para restauração; nesse caso, esse sinalizador não tem significado.

Quando esse parâmetro é true, o componente pode ser restaurado por si só; quando false, o componente só poderá ser restaurado se todo o conjunto de componentes estiver sendo restaurado. (Para obter mais informações, consulte VSS_COMPONENTINFO e Trabalhando com selebilidade e caminhos lógicos.)

O valor padrão para esse parâmetro é false.

[in] dwComponentFlags

Uma máscara de bits de VSS_COMPONENT_FLAGS valores de enumeração que indicam os recursos aos quais esse componente dá suporte. Essa máscara de bits não pode incluir VSS_CF_APP_ROLLBACK_RECOVERY ou VSS_CF_BACKUP_RECOVERY.

O valor padrão para esse parâmetro é zero.

Valor retornado

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

Valor Significado
S_OK
A operação foi bem-sucedida.
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_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_OBJECT_ALREADY_EXISTS
O objeto é uma duplicata. Já existe um componente com o mesmo caminho lógico e nome do componente.
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

Esse método pode ser chamado várias vezes para adicionar vários componentes aos metadados de um gravador expresso.

A combinação de caminho lógico e nome para cada componente de uma instância especificada de uma classe de gravador especificada deve ser exclusiva. Tentar chamar AddComponent duas vezes com os mesmos valores de wszLogicalPath e wszComponentName resulta em um erro de VSS_E_OBJECT_ALREADY_EXISTS.

AddComponent pode ser usado para adicionar subcomponentes — componentes nos quais todos os arquivos de membro são copiados como um grupo, mas que contêm arquivos que podem ser restaurados individualmente. Para obter mais informações, consulte Trabalhando com a selebilidade para restauração e subcomponentes.

Requisitos

   
Cliente mínimo com suporte Windows 7 [somente aplicativos da área de trabalho]
Servidor mínimo com suporte Windows Server 2008 R2 [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

IVssCreateExpressWriterMetadata