Método IVssCreateWriterMetadata::AddAlternateLocationMapping (vswriter.h)
El método AddAlternateLocationMapping crea una asignación de ubicación alternativa para un conjunto de archivos.
Sintaxis
HRESULT AddAlternateLocationMapping(
[in] LPCWSTR wszSourcePath,
[in] LPCWSTR wszSourceFilespec,
[in] bool bRecursive,
[in] LPCWSTR wszDestination
);
Parámetros
[in] wszSourcePath
Cadena de caracteres anchos terminada en NULL que contiene el nombre del directorio o la jerarquía de directorios que contiene los archivos que se van a asignar.
El directorio puede ser un directorio local en la máquina VSS o puede ser un directorio de recursos compartidos de archivos en un servidor de archivos remoto.
La ruta de acceso puede contener variables de entorno (por ejemplo, %SystemRoot%) pero no puede contener caracteres comodín.
No es necesario que la ruta de acceso termine con una barra diagonal inversa (""). Es necesario que las aplicaciones recuperen esta información para comprobarla.
[in] wszSourceFilespec
Cadena de caracteres anchos terminada en NULL que contiene la especificación de archivo de los archivos que se van a asignar.
Una especificación de archivo no puede contener especificaciones de directorio (por ejemplo, sin barras diagonales inversas), pero puede contener ? y * caracteres comodín.
[in] bRecursive
Valor booleano que especifica si la ruta de acceso especificada por el parámetro wszPath identifica solo un único directorio o si indica una jerarquía de directorios que se va a recorrer de forma recursiva. Este parámetro debe establecerse en true si la ruta de acceso se trata como una jerarquía de directorios que se recorrerá de forma recursiva o false si no es así .
Para obtener información sobre cómo recorrer carpetas montadas, vea Trabajar con carpetas montadas y puntos de reanálisis.
[in] wszDestination
Cadena de caracteres anchos terminada en NULL que contiene la ruta de acceso completa al directorio donde se reubicarán los archivos.
El directorio puede ser un directorio local en la máquina VSS o puede ser un directorio de recursos compartidos de archivos en un servidor de archivos remoto.
Se admiten rutas de acceso UNC.
Valor devuelto
A continuación se muestran los códigos de retorno válidos para este método.
Valor | Significado |
---|---|
|
La operación se realizó correctamente. |
|
Uno de los valores de parámetro no es válido. |
|
El autor de la llamada no tiene memoria u otros recursos del sistema. |
|
El documento XML no es válido. Compruebe el registro de eventos para obtener más información. Para obtener más información, consulte Control de eventos y errores en VSS. |
|
No se llamó al método IVssCreateWriterMetadata::SetRestoreMethod antes de llamar a este método. |
|
error inesperado. El código de error se registra en el archivo de registro de errores. Para obtener más información, consulte 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
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. Los escritores solo admiten recursos locales: conjuntos de archivos cuya ruta de acceso absoluta comienza con una especificación de volumen local válida y no pueden ser una unidad de red asignada. Por lo tanto, las entradas de ruta de acceso (wszPath y wszDestination) a AddAlternateLocationMapping (después de la resolución de cualquier variable de entorno) deben estar en este formato.
Se puede llamar a este método varias veces para agregar la asignación de varios archivos.
Combinación de ruta de acceso, especificación de archivo y marca de recursividad (wszPath, wszFileSpec y bRecursive, respectivamente) proporcionados a AddAlternateLocationMapping para asignarse deben coincidir con el de uno de los conjuntos de archivos agregados a uno de los componentes del escritor mediante IVssCreateWriterMetadata::AddFilesToFileGroup, IVssCreateWriterMetadata::AddDatabaseFiles o IVssCreateWriterMetadata::AddDatabaseLogFiles.
Se debe llamar al método AddAlternateLocationMapping solo después de llamar a IVssCreateWriterMetadata::SetRestoreMethod .
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) es VSS_RME_RESTORE_TO_ALTERNATE_LOCATION.
- Su destino de restauración se estableció (en el momento de la restauración) en VSS_RT_ALTERNATE.
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 se 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.
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.
Para obtener más información sobre las ubicaciones de archivos de copia de seguridad y restauración en VSS, consulte Ubicaciones de copia de seguridad y restauración no predeterminadas.
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 | vswriter.h (incluya Vss.h, VsWriter.h) |
Library | VssApi.lib |