Método IVssBackupComponents::AddToSnapshotSet (vsbackup.h)

O método AddToSnapshotSet adiciona um volume original ou compartilhamento de arquivo remoto original ao conjunto de cópias de sombra.

Sintaxe

HRESULT AddToSnapshotSet(
  [in]  VSS_PWSZ pwszVolumeName,
  [in]  VSS_ID   ProviderId,
  [out] VSS_ID   *pidSnapshot
);

Parâmetros

[in] pwszVolumeName

Cadeia de caracteres largos terminada em nulo que contém o nome do volume ou o caminho UNC do compartilhamento de arquivos remoto a ser copiado por sombra. O nome ou caminho UNC deve estar em um dos seguintes formatos e deve incluir uma barra invertida à direita (\):

  • O caminho de uma pasta montada, por exemplo, Y:\MountX\
  • Uma letra de unidade, por exemplo, D:\
  • Um caminho GUID de volume do formulário \\?\Volume{GUID}\ (em que o GUID identifica o volume)
  • Um caminho UNC que especifica um compartilhamento de arquivos remoto, por exemplo, \\Clusterx\Share1\

[in] ProviderId

O provedor a ser usado. GUID_NULL pode ser usado, nesse caso, o provedor padrão será usado.

[out] pidSnapshot

Identificador retornado da cópia de sombra adicionada.

Retornar valor

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

Valor Significado
S_OK
0x000000000L
Adicionado com êxito o volume ou o compartilhamento de arquivos remotos ao conjunto de cópias de sombra.
E_ACCESSDENIED
0x80070005L
O chamador não tem privilégios de backup suficientes ou não é um administrador.
E_INVALIDARG
0x80070057L
Um dos valores de parâmetro não é válido.
E_OUTOFMEMORY
0x8007000EL
O chamador está sem memória ou outros recursos do sistema.
VSS_E_BAD_STATE
0x80042301L
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_MAXIMUM_NUMBER_OF_VOLUMES_REACHED
0x80042312L
O número máximo de volumes ou compartilhamentos de arquivos remotos foi adicionado ao conjunto de cópias de sombra. O volume especificado ou o compartilhamento de arquivos remoto não foi adicionado ao conjunto de cópias de sombra.
VSS_E_MAXIMUM_NUMBER_OF_SNAPSHOTS_REACHED
0x80042317L
O volume ou o compartilhamento de arquivos remoto foi adicionado ao número máximo de conjuntos de cópias de sombra. O volume especificado ou o compartilhamento de arquivos remoto não foi adicionado ao conjunto de cópias de sombra.
VSS_E_NESTED_VOLUME_LIMIT
0x8004232CL
O volume especificado está aninhado muito profundamente para participar da operação vss. Os possíveis motivos para esse erro incluem o seguinte:
  • Tentando criar uma cópia de sombra de um volume que reside em um VHD contido em outro VHD.
  • Tentar criar uma cópia de sombra de um volume VHD quando o volume que contém o VHD também está no mesmo conjunto de cópias de sombra.
Windows Server 2008, Windows Vista, Windows Server 2003 e Windows XP: Não há suporte para esse código de retorno.
VSS_E_OBJECT_NOT_FOUND
0x80042308L
pwszVolumeName não corresponde a um volume ou compartilhamento de arquivos remoto existente.
VSS_E_PROVIDER_NOT_REGISTERED
0x80042304L
ProviderId não corresponde a um provedor registrado.
VSS_E_PROVIDER_VETO
0x80042306L
Erro esperado do provedor. O provedor registrou o erro no log de eventos. Para obter mais informações, consulte Tratamento de eventos e erros em VSS.
VSS_E_SNAPSHOT_SET_IN_PROGRESS
0x80042316L
Outra criação de cópia de sombra já está em andamento. Ocorre ao adicionar um volume CSV a um conjunto de instantâneo de vários nós ao mesmo tempo ou ao adicionar um compartilhamento de expansão ao instantâneo definido de vários nós de cliente SMB ao mesmo tempo.
VSS_E_VOLUME_NOT_SUPPORTED
0x8004230CL
O valor do parâmetro ProviderId é GUID_NULL e nenhum provedor VSS indica que ele dá suporte ao volume especificado ou ao compartilhamento de arquivos remoto.
VSS_E_VOLUME_NOT_SUPPORTED_BY_PROVIDER
0x8004230EL
O volume ou o compartilhamento de arquivos remoto não tem suporte do provedor especificado.
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 em 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.

VSS_E_UNEXPECTED_PROVIDER_ERROR
0x8004230FL
O provedor retornou um código de erro inesperado. Esse código de erro só é retornado por meio do método QueryStatus na interface IVssAsync retornada no parâmetro ppAsync .

Comentários

Windows 7, Windows Server 2008 R2, Windows Vista, Windows Server 2008, Windows XP e Windows Server 2003: Não há suporte para compartilhamentos de arquivos remotos até Windows 8 e Windows Server 2012.

Se pwszVolumeName for um caminho de compartilhamento UNC, a parte do nome do servidor deverá estar no nome do host ou no formato de nome de domínio totalmente qualificado. Os nomes de compartilhamento UNC com endereços IP devem ser normalizados chamando o método IVssBackupComponentsEx4::GetRootAndLogicalPrefixPaths antes de serem passados para AddToSnapshotSet.

O número máximo de volumes copiados de sombra em um conjunto de cópias de sombra é 64.

Se ProviderId for GUID_NULL, o provedor padrão será selecionado de acordo com o seguinte algoritmo:

  1. Se qualquer provedor de hardware der suporte ao volume ou compartilhamento de arquivos remoto especificado, esse provedor será selecionado.
  2. Se não houver nenhum provedor de hardware disponível, se algum provedor de software der suporte ao volume especificado, ele será selecionado.
  3. Se não houver nenhum provedor de hardware ou provedor de software disponível, o provedor do sistema será selecionado. (Há apenas um provedor de sistema pré-instalado, que deve dar suporte a todos os volumes locais não solicitados.)
Esse método não pode ser chamado para um VHD (disco rígido virtual) aninhado dentro de outro VHD.

Windows Server 2008, Windows Vista, Windows Server 2003 e Windows XP: Não há suporte para VHDs.

O identificador de cópia de sombra retornado no parâmetro pidSnapshot é armazenado no Documento de Componentes de Backup. No entanto, não há nenhum método para consultar essas informações e talvez o chamador precise armazená-la para que elas possam ser usadas durante a restauração.

Requisitos

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

IVssBackupComponentsEx4::GetRootAndLogicalPrefixPaths

_VSS_VOLUME_SNAPSHOT_ATTRIBUTES