Metodo IVssBackupComponents::AddToSnapshotSet (vsbackup.h)

Il metodo AddToSnapshotSet aggiunge un volume originale o una condivisione file remota originale al set di copia shadow.

Sintassi

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

Parametri

[in] pwszVolumeName

Stringa di caratteri wide con terminazione null contenente il nome del volume o il percorso UNC della condivisione file remota da copiare in ombreggiatura. Il nome o il percorso UNC devono trovarsi in uno dei formati seguenti e devono includere una barra rovesciata finale (\):

  • Percorso di una cartella montata, ad esempio Y:\MountX\
  • Lettera di unità, ad esempio D:\
  • Percorso GUID del volume del modulo \\?\Volume{GUID}\ (dove GUID identifica il volume)
  • Percorso UNC che specifica una condivisione file remota, ad esempio \\Clusterx\Share1\

[in] ProviderId

Provider da usare. GUID_NULL può essere usato, in questo caso verrà usato il provider predefinito.

[out] pidSnapshot

Identificatore restituito della copia shadow aggiunta.

Valore restituito

Di seguito sono riportati i codici restituiti validi per questo metodo.

Valore Significato
S_OK
0x00000000L
È stato aggiunto correttamente il volume o la condivisione file remota al set di copia shadow.
E_ACCESSDENIED
0x80070005L
Il chiamante non dispone di privilegi di backup sufficienti o non è un amministratore.
E_INVALIDARG
0x80070057L
Uno dei valori dei parametri non è valido.
E_OUTOFMEMORY
0x8007000EL
Il chiamante non è in memoria o altre risorse di sistema.
VSS_E_BAD_STATE
0x80042301L
L'oggetto componenti di backup non viene inizializzato, questo metodo è stato chiamato durante un'operazione di ripristino o questo metodo non è stato chiamato all'interno della sequenza corretta.
VSS_E_MAXIMUM_NUMBER_OF_VOLUMES_REACHED
0x80042312L
Il numero massimo di volumi o condivisioni file remote è stato aggiunto al set di copia shadow. Il volume o la condivisione file remota specificati non sono stati aggiunti al set di copia shadow.
VSS_E_MAXIMUM_NUMBER_OF_SNAPSHOTS_REACHED
0x80042317L
Il volume o la condivisione file remota sono stati aggiunti al numero massimo di set di copia shadow. Il volume o la condivisione file remota specificati non sono stati aggiunti al set di copia shadow.
VSS_E_NESTED_VOLUME_LIMIT
0x8004232CL
Il volume specificato è annidato troppo profondamente per partecipare all'operazione VSS. I motivi possibili per questo errore includono quanto segue:
  • Tentativo di creare una copia shadow di un volume che risiede in un disco rigido virtuale contenuto in un altro disco rigido virtuale.
  • Cercando di creare una copia shadow di un volume VHD quando il volume che contiene il disco rigido virtuale si trova anche nello stesso set di copia shadow.
Windows Server 2008, Windows Vista, Windows Server 2003 e Windows XP: Questo codice restituito non è supportato.
VSS_E_OBJECT_NOT_FOUND
0x80042308L
pwszVolumeName non corrisponde a un volume esistente o a una condivisione file remota.
VSS_E_PROVIDER_NOT_REGISTERED
0x80042304L
ProviderId non corrisponde a un provider registrato.
VSS_E_PROVIDER_VETO
0x80042306L
Errore previsto del provider. Il provider ha registrato l'errore nel registro eventi. Per altre informazioni, vedere Gestione degli eventi e degli errori in VSS.
VSS_E_SNAPSHOT_SET_IN_PROGRESS
0x80042316L
Un'altra creazione di copia shadow è già in corso. Si verifica quando si aggiunge un volume CSV a un set di snapshot da più nodi contemporaneamente oppure quando si aggiunge una condivisione di scalabilità orizzontale al set di snapshot da più nodi client SMB contemporaneamente.
VSS_E_VOLUME_NOT_SUPPORTED
0x8004230CL
Il valore del parametro ProviderId è GUID_NULL e nessun provider VSS indica che supporta il volume o la condivisione file remota specificata.
VSS_E_VOLUME_NOT_SUPPORTED_BY_PROVIDER
0x8004230EL
Il volume o la condivisione file remota non è supportata dal provider specificato.
VSS_E_UNEXPECTED
Errore imprevisto. Il codice di errore viene registrato nel file di log degli errori. Per altre informazioni, vedere Gestione degli eventi e degli errori in VSS.

Windows Server 2008, Windows Vista, Windows Server 2003 e Windows XP: Questo valore non è supportato fino a Windows Server 2008 R2 e Windows 7. E_UNEXPECTED viene invece usato.

VSS_E_UNEXPECTED_PROVIDER_ERROR
0x8004230FL
Il provider ha restituito un codice di errore imprevisto. Questo codice di errore viene restituito solo tramite il metodo QueryStatus nell'interfaccia IVssAsync restituita nel parametro ppAsync .

Commenti

Windows 7, Windows Server 2008 R2, Windows Vista, Windows Server 2008, Windows XP e Windows Server 2003: Le condivisioni file remote non sono supportate fino a Windows 8 e Windows Server 2012.

Se pwszVolumeName è un percorso di condivisione UNC, la parte del nome del server deve essere in formato nome host o nome di dominio completo. I nomi di condivisione UNC con indirizzi IP devono essere normalizzati chiamando il metodo IVssBackupComponentsEx4::GetRootAndLogicalPrefixPaths prima di passare a AddToSnapshotSet.

Il numero massimo di volumi che è possibile includere in una singola copia shadow è 64.

Se ProviderId è GUID_NULL, il provider predefinito viene selezionato in base all'algoritmo seguente:

  1. Se un provider hardware supporta il volume o la condivisione file remota specificati, tale provider è selezionato.
  2. Se non è disponibile alcun provider hardware, se qualsiasi provider software supporta il volume specificato, viene selezionato.
  3. Se non è disponibile alcun provider hardware o provider software, il provider di sistema è selezionato. È presente un solo provider di sistema preinstallato, che deve supportare tutti i volumi locali non rimovibili.
Questo metodo non può essere chiamato per un disco rigido virtuale (VHD) annidato all'interno di un altro disco rigido virtuale.

Windows Server 2008, Windows Vista, Windows Server 2003 e Windows XP: I dischi rigidi virtuali non sono supportati.

L'identificatore di copia shadow restituito nel parametro pidSnapshot viene archiviato nel documento Componenti di backup. Tuttavia, non esiste alcun metodo per eseguire query su queste informazioni e il chiamante potrebbe dover archiviarlo in modo che possa essere usato durante il ripristino.

Requisiti

Requisito Valore
Client minimo supportato Windows XP [solo app desktop]
Server minimo supportato Windows Server 2003 [solo app desktop]
Piattaforma di destinazione Windows
Intestazione vsbackup.h (include VsBackup.h, Vss.h, VsWriter.h)
Libreria VssApi.lib

Vedi anche

IVssBackupComponents

IVssBackupComponentsEx4::GetRootAndLogicalPrefixPaths

_VSS_VOLUME_SNAPSHOT_ATTRIBUTES