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

El método AddToSnapshotSet agrega un volumen original o un recurso compartido de archivos remoto original al conjunto de instantáneas.

Sintaxis

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

Parámetros

[in] pwszVolumeName

Cadena de caracteres anchos terminada en NULL que contiene el nombre del volumen o la ruta de acceso UNC del recurso compartido de archivos remoto que se va a copiar de forma instantánea. El nombre o la ruta de acceso UNC deben tener uno de los siguientes formatos y deben incluir una barra diagonal inversa final (\):

  • Ruta de acceso de una carpeta montada, por ejemplo, Y:\MountX\
  • Una letra de unidad, por ejemplo, D:\
  • Ruta de acceso GUID de volumen con el formato \\?\Volume{GUID}\ (donde GUID identifica el volumen)
  • Ruta de acceso UNC que especifica un recurso compartido de archivos remoto, por ejemplo, \\Clusterx\Share1\

[in] ProviderId

Proveedor que se va a usar. GUID_NULL se puede usar, en cuyo caso se usará el proveedor predeterminado.

[out] pidSnapshot

Identificador devuelto de la instantánea agregada.

Valor devuelto

A continuación se muestran los códigos de retorno válidos para este método.

Valor Significado
S_OK
0x00000000L
Se agregó correctamente el volumen o el recurso compartido de archivos remotos al conjunto de instantáneas.
E_ACCESSDENIED
0x80070005L
El autor de la llamada no tiene suficientes privilegios de copia de seguridad o no es un administrador.
E_INVALIDARG
0x80070057L
Uno de los valores de parámetro no es válido.
E_OUTOFMEMORY
0x8007000EL
El autor de la llamada no tiene memoria u otros recursos del sistema.
VSS_E_BAD_STATE
0x80042301L
El objeto de componentes de copia de seguridad no se inicializa, se ha llamado a este método durante una operación de restauración o no se ha llamado a este método dentro de la secuencia correcta.
VSS_E_MAXIMUM_NUMBER_OF_VOLUMES_REACHED
0x80042312L
Se ha agregado al conjunto de instantáneas el número máximo de volúmenes o recursos compartidos de archivos remotos. El volumen o recurso compartido de archivos remoto especificado no se agregó al conjunto de instantáneas.
VSS_E_MAXIMUM_NUMBER_OF_SNAPSHOTS_REACHED
0x80042317L
El volumen o recurso compartido de archivos remotos se ha agregado al número máximo de conjuntos de instantáneas. El volumen o recurso compartido de archivos remoto especificado no se agregó al conjunto de instantáneas.
VSS_E_NESTED_VOLUME_LIMIT
0x8004232CL
El volumen especificado se anida demasiado para participar en la operación de VSS. Entre los posibles motivos de este error se incluyen los siguientes:
  • Intentando crear una instantánea de un volumen que reside en un disco duro virtual que se encuentra en otro VHD.
  • Intentando crear una instantánea de un volumen VHD cuando el volumen que contiene el disco duro virtual también está en el mismo conjunto de instantáneas.
Windows Server 2008, Windows Vista, Windows Server 2003 y Windows XP: No se admite este código de retorno.
VSS_E_OBJECT_NOT_FOUND
0x80042308L
pwszVolumeName no corresponde a un volumen existente ni a un recurso compartido de archivos remoto.
VSS_E_PROVIDER_NOT_REGISTERED
0x80042304L
ProviderId no corresponde a un proveedor registrado.
VSS_E_PROVIDER_VETO
0x80042306L
Error de proveedor esperado. El proveedor registró el error en el registro de eventos. Para obtener más información, vea Control de eventos y errores en VSS.
VSS_E_SNAPSHOT_SET_IN_PROGRESS
0x80042316L
Otra creación de instantáneas ya está en curso. Se produce al agregar un volumen CSV a un conjunto de instantáneas de varios nodos al mismo tiempo o al agregar un recurso compartido de escalabilidad horizontal al conjunto de instantáneas de varios nodos de cliente SMB al mismo tiempo.
VSS_E_VOLUME_NOT_SUPPORTED
0x8004230CL
El valor del parámetro ProviderId es GUID_NULL y ningún proveedor de VSS indica que admite el volumen especificado o el recurso compartido de archivos remoto.
VSS_E_VOLUME_NOT_SUPPORTED_BY_PROVIDER
0x8004230EL
El proveedor especificado no admite el volumen o el recurso compartido de archivos remoto.
VSS_E_UNEXPECTED
error inesperado. El código de error se registra en el archivo de registro de errores. Para obtener más información, vea Control de eventos y errores en VSS.

Windows Server 2008, Windows Vista, Windows Server 2003 y Windows XP: Este valor no se admite hasta Windows Server 2008 R2 y Windows 7. E_UNEXPECTED se usa en su lugar.

VSS_E_UNEXPECTED_PROVIDER_ERROR
0x8004230FL
El proveedor devolvió un código de error inesperado. Este código de error solo se devuelve a través del método QueryStatus en la interfaz IVssAsync devuelta en el parámetro ppAsync .

Comentarios

Windows 7, Windows Server 2008 R2, Windows Vista, Windows Server 2008, Windows XP y Windows Server 2003: Los recursos compartidos de archivos remotos no se admiten hasta Windows 8 y Windows Server 2012.

Si pwszVolumeName es una ruta de acceso del recurso compartido UNC, la parte del nombre del servidor debe estar en formato de nombre de host o nombre de dominio completo. Los nombres de recurso compartido UNC con direcciones IP deben normalizarse llamando al método IVssBackupComponentsEx4::GetRootAndLogicalPrefixPaths antes de pasarlos a AddToSnapshotSet.

El número máximo de volúmenes con instantáneas en un único conjunto de instantáneas es 64.

Si ProviderId es GUID_NULL, el proveedor predeterminado se selecciona según el algoritmo siguiente:

  1. Si algún proveedor de hardware admite el volumen especificado o el recurso compartido de archivos remoto, se selecciona ese proveedor.
  2. Si no hay ningún proveedor de hardware disponible, si algún proveedor de software admite el volumen especificado, se selecciona.
  3. Si no hay ningún proveedor de hardware o proveedor de software disponible, se selecciona el proveedor del sistema. (Solo hay un proveedor de sistema preinstalado, que debe admitir todos los volúmenes locales no extraíbles).
No se puede llamar a este método para un disco duro virtual (VHD) anidado dentro de otro VHD.

Windows Server 2008, Windows Vista, Windows Server 2003 y Windows XP: No se admiten discos duros virtuales.

El identificador de instantánea que se devuelve en el parámetro pidSnapshot se almacena en el documento componentes de copia de seguridad. Sin embargo, no hay ningún método para consultar esta información y es posible que el autor de la llamada tenga que almacenarla para que se pueda usar durante la restauración.

Requisitos

Requisito Value
Cliente mínimo compatible Windows XP [solo aplicaciones de escritorio]
Servidor mínimo compatible Windows Server 2003 [solo aplicaciones de escritorio]
Plataforma de destino Windows
Encabezado vsbackup.h (incluya VsBackup.h, Vss.h, VsWriter.h)
Library VssApi.lib

Consulte también

IVssBackupComponents

IVssBackupComponentsEx4::GetRootAndLogicalPrefixPaths

_VSS_VOLUME_SNAPSHOT_ATTRIBUTES