2012-07-13 119 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