Condividi tramite


Funzione OpenEncryptedFileRawA (winbase.h)

Apre un file crittografato per eseguire il backup (esportazione) o il ripristino (importazione) del file. Si tratta di un gruppo di funzioni EFS (Encrypted File System) destinate a implementare funzionalità di backup e ripristino, mantenendo i file nello stato crittografato.

Sintassi

DWORD OpenEncryptedFileRawA(
  [in]  LPCSTR lpFileName,
  [in]  ULONG  ulFlags,
  [out] PVOID  *pvContext
);

Parametri

[in] lpFileName

Nome del file da aprire. La stringa deve essere costituita da caratteri dal set di caratteri di Windows.

[in] ulFlags

L'operazione da eseguire. Questo parametro può essere uno dei valori seguenti.

Valore Significato
0
Aprire il file per l'esportazione (backup).
CREATE_FOR_IMPORT
1
Il file viene aperto per l'importazione (ripristino).
CREATE_FOR_DIR
2
Importare (ripristinare) una directory contenente file crittografati. Questa operazione deve essere combinata con uno dei due flag precedenti per indicare l'operazione.
OVERWRITE_HIDDEN
4
Sovrascrivere un file nascosto all'importazione.

[out] pvContext

Indirizzo di un blocco di contesto che deve essere presentato nelle chiamate successive a ReadEncryptedFileRaw, WriteEncryptedFileRaw o CloseEncryptedFileRaw. Non modificarla.

Valore restituito

Se la funzione ha esito positivo, restituisce ERROR_SUCCESS.

Se la funzione ha esito negativo, restituisce un codice di errore diverso da zero definito in WinError.h. È possibile usare FormatMessage con il flag FORMAT_MESSAGE_FROM_SYSTEM per ottenere una descrizione di testo generica dell'errore.

Commenti

Il chiamante deve avere accesso in lettura o scrittura al file oppure deve avere privilegi di backup SeBackupPrivilege nel computer in cui risiedono i file in modo che la chiamata abbia esito positivo.

Per eseguire il backup di un file crittografato, chiamare OpenEncryptedFileRaw per aprire il file e quindi chiamare ReadEncryptedFileRaw. Al termine del backup, chiamare CloseEncryptedFileRaw.

Per ripristinare un file crittografato, chiamare OpenEncryptedFileRaw, specificando CREATE_FOR_IMPORT nel parametro ulFlags e quindi chiamare WriteEncryptedFileRaw una volta. Al termine dell'operazione, chiamare CloseEncryptedFileRaw.

OpenEncryptedFileRaw ha esito negativo se lpFileName supera MAX_PATH caratteri quando si apre un file crittografato in un computer remoto.

Se il chiamante non ha accesso alla chiave per il file, il chiamante deve SeBackupPrivilege per esportare file crittografati o SeRestorePrivilege per importare file crittografati.

Le funzioni BackupRead e BackupWrite gestiscono il backup e il ripristino di file non crittografati.

In Windows 8, Windows Server 2012 e versioni successive, questa funzione è supportata dalle tecnologie seguenti.

Tecnologia Supportato
Protocollo SMB (Server Message Block) 3.0
Failover trasparente SMB 3.0 (TFO) No
SMB 3.0 con condivisioni file con scalabilità orizzontale (SO) No
File system del volume condiviso del cluster (CsvFS) No
File system resiliente (ReFS) No
 

SMB 3.0 non supporta EFS nelle condivisioni con funzionalità di disponibilità continua.

Nota

L'intestazione winbase.h definisce OpenEncryptedFileRaw come alias che seleziona automaticamente la versione ANSI o Unicode di questa funzione in base alla definizione della costante preprocessore UNICODE. La combinazione dell'utilizzo dell'alias di codifica neutrale con il codice che non è neutrale dalla codifica può causare errori di corrispondenza che causano errori di compilazione o runtime. Per altre informazioni, vedere Convenzioni per i prototipi di funzione.

Requisiti

Requisito Valore
Client minimo supportato Windows XP Professional [solo app desktop]
Server minimo supportato Windows Server 2003 [solo app desktop]
Piattaforma di destinazione Windows
Intestazione winbase.h (include Windows.h)
Libreria Advapi32.lib
DLL Advapi32.dll
Set di API ext-ms-win-advapi32-encryptedfile-l1-1-0 (introdotto in Windows 8)

Vedi anche

BackupRead

BackupWrite

CloseEncryptedFileRaw

Crittografia file

Funzioni di gestione file

ReadEncryptedFileRaw

WriteEncryptedFileRaw