2012-07-13 152 views
2
using System; 
using System.Collections.Generic; 
using System.ComponentModel; 
using System.Data; 
using System.Drawing; 
using System.Linq; 
using System.Text; 
using System.Windows.Forms; 
using System.IO; 
using System.Security.AccessControl; 
namespace WindowsFormsApplication1 
{ 
    public partial class Form1 : Form 
    { 
     public Form1() 
     { 
      InitializeComponent(); 
     } 

     private void Form1_Load(object sender, EventArgs e) 
     { 
      string Directoryd = "D:"; 
      string mydirectory = Directoryd + "\\" + "rs\\"; 
      if (!Directory.Exists(mydirectory)) 
      { 
       Directory.CreateDirectory(mydirectory); 
      } 
      DirectoryInfo di = new DirectoryInfo(mydirectory); 
      DirectorySecurity ds = di.GetAccessControl(); 


      ds.AddAccessRule(new FileSystemAccessRule(@"*",FileSystemRights.FullControl,AccessControlType.Allow)); 
      di.SetAccessControl(ds); 





     } 
    } 
} 

這是我的代碼時,我執行這個彈出是顯示 其實,這段代碼是創建一個文件夾RS並設置其權限拒絕完全控制,但在運行附帶錯誤消息 部分或全部標識引用無法翻譯。 什麼是錯誤?設置文件系統權限

+0

*爲什麼?如果這對於每個人比你應該嘗試每個人組 – 2012-07-13 14:58:50

+0

這是每個人組 – gokul 2012-07-13 14:59:47

+0

它是「所有人」在「gokul-PC \ gokul」 – t3hn00b 2012-07-13 15:01:20

回答

2

你應該更改以下行:

ds.AddAccessRule(new FileSystemAccessRule(@"*",FileSystemRights.FullControl,AccessControlType.Allow)); 

到:

ds.AddAccessRule(new FileSystemAccessRule(@"Everyone",FileSystemRights.FullControl,AccessControlType.Allow)); 

此外,如果你看看下面的Everyone Group有一個答案有點進一步下跌表明您應該使用SSID的,而不是的名字。

+0

答案很好,但在目錄中添加目錄安全提交錯誤/編譯器上的錯誤 – gokul 2012-07-13 15:07:23

+0

好吧,不要改變那個位然後:) – 2012-07-13 15:07:53

+0

感謝您的回答 – gokul 2012-07-13 15:09:31

1

嘗試組「Everyone」,而不是*。

+0

thanx的答案+1 – gokul 2012-07-13 15:47:16