Compartir a través de


Método IVssExamineWriterMetadata::GetAlternateLocationMapping (vsbackup.h)

El método GetAlternateLocationMapping obtiene una asignación de ubicación alternativa específica de un conjunto de archivos.

Sintaxis

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

Parámetros

[in] iMapping

Índice de una asignación determinada. El valor de este parámetro es un entero comprendido entre 0 y n-1 inclusive, donde n es el número total de asignaciones de ubicación alternativas asociadas a un escritor determinado. IVssExamineWriterMetadata::GetRestoreMethod devuelve el valor de n.

[out] ppFiledesc

Puntero indirecto doblemente a un objeto IVssWMFiledesc que contiene la información de asignación de ubicación alternativa.

Valor devuelto

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

Valor Significado
S_OK
Devolvió correctamente un puntero a una interfaz IVssWMFiledesc .
E_INVALIDARG
Uno de los valores de parámetro no es válido.
E_OUTOFMEMORY
El autor de la llamada no tiene memoria u otros recursos del sistema.
VSS_E_INVALID_XML_DOCUMENT
El documento XML no es válido. Compruebe el registro de eventos para obtener más información. Para obtener más información, vea Control de eventos y errores en VSS.
VSS_E_OBJECT_NOT_FOUND
La asignación de ubicación alternativa especificada no existe.
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.

Comentarios

El valor devuelto por IVssExamineWriterMetadata::GetAlternateLocationMapping no debe confundirse con el devuelto por IVssComponent::GetAlternateLocationMapping.

IVssComponent::GetAlternateLocationMapping es la ubicación alternativa a la que se restauró un archivo.

IVssExamineWriterMetadata::GetAlternateLocationMapping es la asignación de ubicación alternativa a la que se puede restaurar un archivo si es necesario.

Siempre se debe restaurar un archivo en su asignación de ubicación alternativa si se cumple alguna de las siguientes condiciones:

  • El método de restauración (establecido en el momento de la copia de seguridad) se VSS_RME_RESTORE_TO_ALTERNATE_LOCATION.
  • Su destino de restauración se estableció (en el momento de la restauración) en VSS_RT_ALTERNATE.
En cualquier caso, si no se define ninguna asignación de ubicación alternativa válida, esto constituye un error de escritor.

Un archivo se puede restaurar en una asignación de ubicación alternativa si se cumple alguna de las siguientes condiciones:

  • El método de restauración es VSS_RME_RESTORE_IF_NOT_THERE y una versión del archivo ya está presente en el disco.
  • El método restore es VSS_RME_RESTORE_IF_CAN_REPLACE y una versión del archivo está presente en el disco y no se puede reemplazar.
De nuevo, si no se define ninguna asignación de ubicación alternativa válida, esto constituye un error de escritura.

Una asignación de ubicación alternativa solo se usa durante una operación de restauración y no debe confundirse con una ruta de acceso alternativa, que solo se usa durante una operación de copia de seguridad.

El autor de la llamada es responsable de llamar a IUnknown::Release para liberar los recursos del objeto IVssWMFiledesc devuelto.

Requisitos

   
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::AddAlternativeLocationMapping

IVssComponent::GetAlternateLocationMapping

IVssExamineWriterMetadata

IVssExamineWriterMetadata::GetRestoreMethod

IVssWMFiledesc