Condividi tramite


Metodo IVssComponent::GetAlternateLocationMapping (vswriter.h)

GetAlternateLocationMapping viene usato per restituire il percorso alternativo di un set di file per il ripristino dei file. Questo metodo può essere chiamato da un writer o da un richiedente.

Sintassi

HRESULT GetAlternateLocationMapping(
  [in]  UINT           iMapping,
  [out] IVssWMFiledesc **ppFiledesc
);

Parametri

[in] iMapping

Indice di un mapping specifico. Il valore di questo parametro è un numero intero compreso tra 0 e n-1 inclusi, dove n è il numero totale di mapping di percorsi alternativi associati al componente corrente. Il valore di n viene restituito da IVssComponent::GetAlternateLocationMappingCount.

[out] ppFiledesc

Puntatore indiretto doubly a un oggetto IVssWMFiledesc contenente le informazioni di mapping.

Valore restituito

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

Valore Significato
S_OK
È stato restituito correttamente il valore dell'attributo.
E_INVALIDARG
Uno dei valori dei parametri non è valido.
E_OUTOFMEMORY
Il chiamante non è in memoria o in altre risorse di sistema.
VSS_E_INVALID_XML_DOCUMENT
Documento XML non valido. Per informazioni dettagliate, vedere il registro eventi. Per altre informazioni, vedere Gestione degli eventi e degli errori in VSS.
VSS_E_OBJECT_NOT_FOUND
L'elemento specificato non è stato trovato.

Commenti

I mapping di percorsi alternativi restituiti da GetAlternateLocationMapping possono provenire non solo dai file nel componente corrente, ma anche dai file in uno dei relativi sottocomponenti non selezionabili.

Il valore restituito da IVssComponent::GetAlternateLocationMapping non deve essere confuso con quello restituito da IVssExamineWriterMetadata::GetAlternateLocationMapping:

  • IVssExamineWriterMetadata::GetAlternateLocationMapping è il mapping del percorso alternativo a cui un file può essere ripristinato, se necessario.
  • IVssComponent::GetAlternateLocationMapping è il percorso alternativo in cui è stato effettivamente ripristinato un file.
Un file deve essere sempre ripristinato nel relativo mapping di percorso alternativo se una delle condizioni seguenti è vera:
  • Il metodo di ripristino (impostato in fase di backup) è VSS_RME_RESTORE_TO_ALTERNATE_LOCATION.
  • La destinazione di ripristino è stata impostata (in fase di ripristino) su VSS_RT_ALTERNATE.
In entrambi i casi, non avendo definito alcun mapping di posizione alternativo costituisce un errore del writer.

Un file può essere ripristinato in un mapping di percorso alternativo se si verifica una delle condizioni seguenti:

  • Il metodo di ripristino è VSS_RME_RESTORE_IF_NOT_THERE e una versione del file è già presente sul disco.
  • Il metodo di ripristino è VSS_RME_RESTORE_IF_CAN_REPLACE e una versione del file è presente su disco e non può essere sostituita.
Un mapping di percorso alternativo viene usato solo durante un'operazione di ripristino e non deve essere confuso con un percorso alternativo, che viene usato solo durante un'operazione di backup.

Il mapping restituito da GetAlternateLocationMapping fa riferimento ai mapping dei percorsi alternativi usati nel corso del ripristino dei file.

I mapping di percorsi alternativi vengono aggiunti a un oggetto IVssComponent di IVssBackupComponents::AddAlternativeLocationMapping.

Il chiamante deve chiamare IUnknown::Release per rilasciare le risorse di sistema contenute nel parametro ppMapping quando viene eseguito con l'oggetto IVssWMFiledesc a cui punta.

Per altre informazioni sui percorsi dei file di backup e ripristino in VSS, vedere Percorsi di backup e ripristino non predefiniti.

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 vswriter.h (include Vss.h, VsWriter.h)
Libreria VssApi.lib

Vedi anche

IVssBackupComponents::AddAlternativeLocationMapping

IVssComponent

IVssExamineWriterMetadata::GetAlternateLocationMapping