Función OpenEncryptedFileRawW (winbase.h)

Abre un archivo cifrado para realizar una copia de seguridad (exportar) o restaurar (importar) el archivo. Se trata de uno de los grupos de funciones del sistema de archivos cifrados (EFS) diseñadas para implementar la funcionalidad de copia de seguridad y restauración, a la vez que se mantienen los archivos en su estado cifrado.

Sintaxis

DWORD OpenEncryptedFileRawW(
  [in]  LPCWSTR lpFileName,
  [in]  ULONG   ulFlags,
  [out] PVOID   *pvContext
);

Parámetros

[in] lpFileName

Nombre del archivo que se va a abrir. La cadena debe constar de caracteres del juego de caracteres de Windows.

[in] ulFlags

La operación que se va a realizar. Este parámetro puede ser uno de los siguientes valores.

Valor Significado
0
Abra el archivo para la exportación (copia de seguridad).
CREATE_FOR_IMPORT
1
El archivo se está abriendo para importar (restaurar).
CREATE_FOR_DIR
2
Importe (restaure) un directorio que contenga archivos cifrados. Debe combinarse con una de las dos marcas anteriores para indicar la operación.
OVERWRITE_HIDDEN
4
Sobrescriba un archivo oculto en la importación.

[out] pvContext

Dirección de un bloque de contexto que se debe presentar en llamadas posteriores a ReadEncryptedFileRaw, WriteEncryptedFileRaw o CloseEncryptedFileRaw. No la modifique.

Valor devuelto

Si la función se realiza correctamente, devuelve ERROR_SUCCESS.

Si se produce un error en la función, devuelve un código de error distinto de cero definido en WinError.h. Puede usar FormatMessage con la marca FORMAT_MESSAGE_FROM_SYSTEM para obtener una descripción de texto genérica del error.

Comentarios

El autor de la llamada debe tener acceso de lectura o escritura al archivo, o bien debe tener el privilegio de copia de seguridad SeBackupPrivilege en el equipo en el que residen los archivos para que la llamada se realice correctamente.

Para realizar una copia de seguridad de un archivo cifrado, llame a OpenEncryptedFileRaw para abrir el archivo y, a continuación, llame a ReadEncryptedFileRaw. Cuando se complete la copia de seguridad, llame a CloseEncryptedFileRaw.

Para restaurar un archivo cifrado, llame a OpenEncryptedFileRaw, especificando CREATE_FOR_IMPORT en el parámetro ulFlags y, a continuación, llame a WriteEncryptedFileRaw una vez. Cuando se complete la operación, llame a CloseEncryptedFileRaw.

Se produce un error en OpenEncryptedFileRaw si lpFileName supera los MAX_PATH caracteres al abrir un archivo cifrado en un equipo remoto.

Si el autor de la llamada no tiene acceso a la clave del archivo, necesita SeBackupPrivilege para exportar archivos cifrados o SeRestorePrivilege para importar archivos cifrados.

Las funciones BackupRead y BackupWrite controlan la copia de seguridad y restauración de archivos sin cifrar.

En Windows 8, Windows Server 2012 y versiones posteriores, esta función es compatible con las siguientes tecnologías.

Tecnología Compatible
Protocolo Bloque de mensajes del servidor (SMB) 3.0
Conmutación por error transparente (TFO) de SMB 3.0 No
SMB 3.0 con recursos compartidos de archivos de escalabilidad horizontal (SO) No
Sistema de archivos de Volumen compartido de clúster (CsvFS) No
Sistema de archivos resistente a errores (ReFS) No
 

SMB 3.0 no admite EFS en recursos compartidos con funcionalidad de disponibilidad continua.

Nota

El encabezado winbase.h define OpenEncryptedFileRaw como alias que selecciona automáticamente la versión ANSI o Unicode de esta función en función de la definición de la constante de preprocesador UNICODE. La combinación del uso del alias neutral de codificación con código que no es neutral de codificación puede dar lugar a errores de coincidencia que dan lugar a errores de compilación o tiempo de ejecución. Para obtener más información, vea Convenciones para prototipos de función.

Requisitos

Requisito Value
Cliente mínimo compatible Windows XP Professional [solo aplicaciones de escritorio]
Servidor mínimo compatible Windows Server 2003 [solo aplicaciones de escritorio]
Plataforma de destino Windows
Encabezado winbase.h (incluye Windows.h)
Library Advapi32.lib
Archivo DLL Advapi32.dll
Conjunto de API ext-ms-win-advapi32-encryptedfile-l1-1-0 (introducido en Windows 8)

Consulte también

BackupRead

BackupWrite

CloseEncryptedFileRaw

Cifrado de archivos

Funciones de administración de archivos

ReadEncryptedFileRaw

WriteEncryptedFileRaw