DuplicateEncryptionInfoFile 函式 (winefs.h)
將 EFS 中繼資料從一個檔案或目錄複寫到另一個檔案或目錄。
語法
DWORD DuplicateEncryptionInfoFile(
[in] LPCWSTR SrcFileName,
[in] LPCWSTR DstFileName,
[in] DWORD dwCreationDistribution,
[in] DWORD dwAttributes,
[in, optional] const LPSECURITY_ATTRIBUTES lpSecurityAttributes
);
參數
[in] SrcFileName
要從中複製 EFS 中繼資料的檔案或目錄名稱。 此原始程式檔或目錄必須加密。
[in] DstFileName
要複製 EFS 中繼資料的檔案或目錄名稱。
呼叫此函式之前,不需要加密此目的地檔案或目錄;不過,如果此函式順利完成,則會進行加密。
如果 SrcFileName 的值指定檔案,此參數的值也必須指定檔案,同樣地指定目錄。 如果這個參數所指定名稱的檔案或目錄不存在,則會根據 SrcFileName 是否指定檔案或目錄) 來建立檔案或目錄 (。
[in] dwCreationDistribution
描述要如何開啟 DstFileName 參數值所識別的目的地檔案或目錄。 以下是此參數的有效值。
值 | 意義 |
---|---|
|
一律建立目的地檔案或目錄。 CREATE_NEW以外的任何傳入此參數的值都會當做CREATE_ALWAYS來處理。 |
|
只有當目的地檔案不存在時,才建立目的地檔案或目錄。 如果存在,而且已指定此值,此函式將會失敗。 |
[in] dwAttributes
目的地檔案或目錄的檔案屬性。 此函式目前不會處理 FILE_READ_ONLY 屬性。
[in, optional] lpSecurityAttributes
指定目的地檔案或目錄之安全性屬性之 SECURITY_ATTRIBUTES 結構的指標,如果尚未存在,則為 。 如果您指定 Null,檔案或目錄會取得預設的安全性描述元。 檔案或目錄的預設安全性描述元中的 ACL 會繼承自其父目錄。
傳回值
如果函式成功,傳回值 會ERROR_SUCCESS。
如果函式失敗,則傳回值是系統錯誤碼。 如需錯誤碼的完整清單,請參閱 系統錯誤碼 或標頭檔 WinError.h。
備註
EFS 需要對目的地檔案或目錄的獨佔存取權,才能呼叫此函式。 如果未提供此存取權,此函式將會失敗。
呼叫端應該具有來源檔案或目錄的 EFS 金鑰,以及來源檔案或目錄的至少 READ_ATTRIBUTE ACL。
指定的來源和目的地檔案或目錄應該位於同一部電腦上;否則,將會傳回錯誤。
在 Windows 8 和 Windows Server 2012 中,下列技術支援此函式。
技術 | 支援 |
---|---|
伺服器訊息區 (SMB) 3.0 通訊協定 | 是 |
SMB 3.0 透明容錯移轉 (TFO) | 否 |
具有向外延展檔案共用的 SMB 3.0 (SO) | 否 |
叢集共用磁片區檔案系統 (CsvFS) | 否 |
彈性檔案系統 (ReFS) | 否 |
SMB 3.0 不支援具有持續可用性功能的共用上的 EFS。
規格需求
最低支援的用戶端 | Windows XP Professional [僅限傳統型應用程式] |
最低支援的伺服器 | Windows Server 2003 [僅限傳統型應用程式] |
目標平台 | Windows |
標頭 | winefs.h (包括 Windows.h) |
程式庫 | Advapi32.lib |
Dll | Advapi32.dll |