2012-02-06 32 views
5

Khi sử dụng phương thức File.Copy(), tệp sẽ được sao chép vào thư mục mới của nó, tuy nhiên nó sẽ mất quyền truy cập ban đầu.Sao chép tệp với quyền ban đầu của nó

Có cách nào để sao chép tệp để không bị mất quyền không?

+3

Các tập tin không được thừa kế cha mẹ Folders quyền is it? – ThePower

+1

Nếu tôi sử dụng File.Copy(), không có quyền nào được áp dụng cho tệp mới. Sử dụng [giải pháp của Alex] (http://stackoverflow.com/a/9164000/1192774) hoạt động. – WeaslB

Trả lời

9

I belive bạn có thể làm một cái gì đó như thế này:

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

Hoạt động như một sự quyến rũ! Cảm ơn! – WeaslB

+0

Cảm ơn thông tin trên. –

Các vấn đề liên quan