2012-02-06 88 views
5

使用File.Copy()方法時,該文件將被複制到其新目錄,但會丟失其原始權限。以其原始權限複製文件

有沒有辦法複製文件,以便它不會失去權限?

+3

該文件沒有繼承父母文件夾的權限是什麼呢? – ThePower 2012-02-06 16:54:18

+1

如果我使用File.Copy(),則沒有權限應用於新文件。 使用[亞歷克斯的解決方案](http://stackoverflow.com/a/9164000/1192774)的作品。 – WeaslB 2012-02-06 18:23:41

回答

9

我相信你可以做這樣的事情:

File.Copy(...) 
FileInfo file1 = new FileInfo(@"c:\test.txt"); 
FileInfo file2 = new FileInfo(@"c:\test2.txt"); 
FileSecurity ac1 = file1.GetAccessControl(); 
ac1.SetAccessRuleProtection(true, true); 
file2.SetAccessControl(ac1); 
+0

工程就像一個魅力!謝謝! – WeaslB 2012-02-06 17:29:16

+0

感謝您的上述信息。 – 2014-11-14 06:58:55