Metodo IVssCreateWriterMetadata::AddComponentDependency (vswriter.h)
Il metodo AddComponentDependency consente a un writer di indicare che un componente gestito ha una dipendenza esplicita del componente writer; ovvero, un altro componente in un altro writer deve essere sottoposto a backup e ripristinato con esso.
Sintassi
HRESULT AddComponentDependency(
[in] LPCWSTR wszForLogicalPath,
[in] LPCWSTR wszForComponentName,
[in] VSS_ID onWriterId,
[in] LPCWSTR wszOnLogicalPath,
[in] LPCWSTR wszOnComponentName
);
Parametri
[in] wszForLogicalPath
Stringa di caratteri wide con terminazione null contenente il percorso logico del componente (gestito dal writer corrente) che richiede una dipendenza.
[in] wszForComponentName
Stringa di caratteri wide con terminazione null contenente il componente (gestito dal writer corrente) che richiede una dipendenza.
[in] onWriterId
ID classe o VSS_ID (GUID) del writer che gestisce il componente in base al quale dipende il componente corrente.
[in] wszOnLogicalPath
Percorso logico del componente (gestito dal writer identificato da onWriterId) in cui dipende il componente corrente.
[in] wszOnComponentName
Nome del componente (gestito dal writer identificato da onWriterId) in cui dipende il componente corrente.
Valore restituito
Di seguito sono riportati i codici restituiti validi per questo metodo.
Valore | Significato |
---|---|
|
L'operazione è stata completata. |
|
Uno dei valori dei parametri non è valido. |
|
Il chiamante non è in memoria o altre risorse di sistema. |
|
Il documento XML non è valido. Controllare il registro eventi per informazioni dettagliate. Per altre informazioni, vedere Gestione degli eventi e degli errori in VSS. |
|
Il componente specificato da wszForLogicalPath e wszForComponentName non esiste. |
|
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. |
Commenti
Le dipendenze sui componenti gestiti dal writer corrente non sono consentite.
Una dipendenza richiede che sia la destinazione della dipendenza che il componente che dipende dalla destinazione vengano ripristinati e sottoposti a backup insieme. Non indica una priorità tra i componenti, anche se un richiedente può scegliere di implementarlo.
Poiché la combinazione di nome logico e nome componente deve essere univoca in tutte le istanze di una classe writer, il fatto che diversi writer potrebbero avere lo stesso ID di classe non è un problema.
Questo metodo può essere usato per dichiarare dipendenze remote. Un writer può dichiarare una dipendenza remota pre-sospesa "\\RemoteComputerName", dove RemoteComputerName è il nome del computer in cui risiede il componente remoto, al percorso logico nel parametro wszOnLogicalPath. Il valore di RemoteComputerName può essere un indirizzo IP o un nome computer restituito dalla funzione GetComputerNameEx .
Se il componente remoto si trova in un cluster, il writer deve segnalare il nome virtuale per il cluster ed è responsabilità del richiedente eseguire il mapping del nome virtuale al nome fisico di un nodo del cluster prima che sia possibile creare una copia shadow del volume.
Per determinare se una dipendenza è locale o remota, il richiedente deve esaminare il nome del componente restituito nel parametro pbstrComponentName . Se il nome del componente inizia con "\", il richiedente deve presupporre che specifica una dipendenza remota e che il primo componente che segue "\" è RemoteComputerName specificato dal writer. Se il nome del componente non inizia con "\", il richiedente deve presupporre che specifica una dipendenza locale.
Windows Server 2003: Questo metodo non può essere usato per dichiarare dipendenze remote fino a Windows Server 2003 con Service Pack 1 (SP1).
Requisiti
Client minimo supportato | Windows Vista [solo app desktop] |
Server minimo supportato | Windows Server 2003 [solo app desktop] |
Piattaforma di destinazione | Windows |
Intestazione | vswriter.h (include Vss.h, VsWriter.h) |
Libreria | VssApi.lib |