Condividi tramite


Funzione ReadEncryptedFileRaw (winbase.h)

Esegue il backup (esportazione) di file crittografati. 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 ReadEncryptedFileRaw(
  [in]           PFE_EXPORT_FUNC pfExportCallback,
  [in, optional] PVOID           pvCallbackContext,
  [in]           PVOID           pvContext
);

Parametri

[in] pfExportCallback

Puntatore alla funzione di callback di esportazione. Il sistema chiama la funzione di callback più volte, ogni volta che passa un blocco dei dati del file alla funzione di callback fino a quando l'intero file non è stato letto. Per altre informazioni, vedere ExportCallback.

[in, optional] pvCallbackContext

Puntatore a un blocco di contesto definito dall'applicazione e allocato. Il sistema passa questo puntatore alla funzione di callback come parametro in modo che la funzione di callback possa avere accesso ai dati specifici dell'applicazione. Questa può essere una struttura e può contenere tutti i dati necessari all'applicazione, ad esempio l'handle al file che conterrà la copia di backup del file crittografato.

[in] pvContext

Puntatore a un blocco di contesto definito dal sistema. Il blocco di contesto viene restituito dalla funzione OpenEncryptedFileRaw . Non modificarla.

Valore restituito

Se la funzione ha esito positivo, il valore restituito è 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 file sottoposto a backup non viene decrittografato; viene eseguito il backup nello stato crittografato.

Per eseguire il backup di un file crittografato, chiamare OpenEncryptedFileRaw per aprire il file. Chiamare quindi ReadEncryptedFileRaw, passandolo all'indirizzo di una funzione di callback di esportazione definita dall'applicazione. Il sistema chiama più volte questa funzione di callback fino a quando l'intero contenuto del file non è stato letto e sottoposto a backup. Al termine del backup, chiamare CloseEncryptedFileRaw per liberare risorse e chiudere il file. Per informazioni dettagliate su come dichiarare la funzione di callback di esportazione, vedere ExportCallback .

Per ripristinare un file crittografato, chiamare OpenEncryptedFileRaw, specificando CREATE_FOR_IMPORT nel parametro ulFlags . Chiamare quindi WriteEncryptedFileRaw, passandolo l'indirizzo di una funzione di callback di importazione definita dall'applicazione. Il sistema chiama questa funzione di callback più volte fino a quando l'intero contenuto del file non è stato letto e ripristinato. Al termine del ripristino, chiamare CloseEncryptedFileRaw per liberare risorse e chiudere il file. Per informazioni dettagliate su come dichiarare la funzione di callback di importazione, vedere ImportCallback .

Questa funzione è destinata al backup solo dei file crittografati; vedere BackupRead per il backup 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.

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

CloseEncryptedFileRaw

Crittografia file

Funzioni di gestione file

OpenEncryptedFileRaw

WriteEncryptedFileRaw