Función OpenEncryptedFileRawA (winbase.h)

Abre un archivo cifrado para realizar una copia de seguridad (exportar) o restaurar (importar) el archivo. Se trata de un grupo de funciones del Sistema de archivos cifrados (EFS) que está pensada para implementar la funcionalidad de copia de seguridad y restauración, a la vez que mantiene los archivos en su estado cifrado.

Sintaxis

DWORD OpenEncryptedFileRawA(
  [in]  LPCSTR 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 exportar (copia de seguridad).
CREATE_FOR_IMPORT
1
El archivo se está abriendo para la importación (restauración).
CREATE_FOR_DIR
2
Importe (restaurar) 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. Una vez completada 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 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 capacidad 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 neutro de codificación con código que no es neutral de codificación puede provocar discrepancias que dan lugar a errores de compilación o en 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 (incluya 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