ReadEncryptedFileRaw 函式 (winbase.h)
備份 (匯出) 加密檔案。 這是一組加密文件系統 (EFS) 函式,用來實作備份和還原功能,同時維持其加密狀態的檔案。
語法
DWORD ReadEncryptedFileRaw(
[in] PFE_EXPORT_FUNC pfExportCallback,
[in, optional] PVOID pvCallbackContext,
[in] PVOID pvContext
);
參數
[in] pfExportCallback
匯出回呼函式的指標。 系統會多次呼叫回呼函式,每次將檔案數據的區塊傳遞至回呼函式,直到讀取整個檔案為止。 如需詳細資訊,請參閱 ExportCallback。
[in, optional] pvCallbackContext
應用程式定義的和已配置內容區塊的指標。 系統會將此指標傳遞至回呼函式做為參數,讓回呼函式可以存取應用程式特定的數據。 這可以是結構,而且可以包含應用程式所需的任何數據,例如將包含加密檔案備份複本之檔案的句柄。
[in] pvContext
系統定義內容區塊的指標。 內容區塊是由 OpenEncryptedFileRaw 函式傳回。 請勿修改該字串。
傳回值
如果函式成功,傳回值 會ERROR_SUCCESS。
如果函式失敗,它會傳回 WinError.h 中定義的非零錯誤碼。 您可以使用 FormatMessage 搭配 FORMAT_MESSAGE_FROM_SYSTEM 旗標,以取得錯誤的一般文字描述。
備註
正在備份的檔案不會解密;其已備份其加密狀態。
若要備份加密的檔案,請呼叫 OpenEncryptedFileRaw 來開啟檔案。 然後呼叫 ReadEncryptedFileRaw,並傳遞應用程式定義匯出回呼函式的位址。 系統會多次呼叫此回呼函式,直到整個檔案的內容已讀取和備份為止。 備份完成時,請呼叫 CloseEncryptedFileRaw 以釋放資源並關閉檔案。 如需如何宣告導出回呼函式的詳細資訊,請參閱 ExportCallback 。
若要還原加密的檔案,請呼叫 OpenEncryptedFileRaw,並在 ulFlags 參數中指定CREATE_FOR_IMPORT。 然後呼叫 WriteEncryptedFileRaw,並傳遞應用程式定義匯入回呼函式的位址。 系統會多次呼叫此回呼函式,直到整個檔案的內容已讀取和還原為止。 還原完成時,請呼叫 CloseEncryptedFileRaw 以釋放資源並關閉檔案。 如需如何宣告匯入回呼函式的詳細資訊,請參閱 ImportCallback 。
此函式僅適用於僅加密檔案的備份;請參閱 BackupRead 以備份未加密的檔案。
在 Windows 8、Windows Server 2012 及更新版本中,下列技術支援此函式。
技術 | 支援 |
---|---|
伺服器消息塊 (SMB) 3.0 通訊協定 | Yes |
SMB 3.0 透明故障轉移 (TFO) | No |
具有向外延展檔案共用的SMB 3.0 (SO) | No |
叢集共用磁碟區文件系統 (CsvFS) | No |
彈性檔案系統 (ReFS) | No |
SMB 3.0 不支援具有持續可用性功能的共用上的EFS。
規格需求
需求 | 值 |
---|---|
最低支援的用戶端 | Windows XP Professional [僅限傳統型應用程式] |
最低支援的伺服器 | Windows Server 2003 [僅限傳統型應用程式] |
目標平台 | Windows |
標頭 | winbase.h (包含 Windows.h) |
程式庫 | Advapi32.lib |
Dll | Advapi32.dll |
API 集合 | ext-ms-win-advapi32-encryptedfile-l1-1-0 (中引進 Windows 8) |