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 [僅限傳統型應用程式] |
目標平臺 | 窗戶 |
標頭 | winefs.h (包括 Windows.h) |
連結庫 | Advapi32.lib |
DLL | Advapi32.dll |