文件属性及权限设置

 在Winform中更新Access数据库时出现错误“操作必须使用一个可更新的查询。”,发现数据库文件具有只读属性,于是移除文件只读属性,更新数据库成功。

以下为操作所用代码:



//将 test.txt 设置成正常文件(移除只读、隐藏等属性)
System.IO.File.SetAttributes("test.txt", System.IO.FileAttributes.Normal);

  

 顺便附上文件的权限设置方法(需添加引用System.IO;System.Security.AccessControl;)。


        
//添加对文件的访问控制(ACL)权限
        public static void AddFileSecurity(string fileName, string account,
            FileSystemRights rights, AccessControlType controlType)
        {
            FileSecurity fSecurity = File.GetAccessControl(fileName);
            fSecurity.AddAccessRule(new FileSystemAccessRule(account,rights, controlType));
            File.SetAccessControl(fileName, fSecurity);

        }

        
//移除对文件的访问控制(ACL)权限
        public static void RemoveFileSecurity(string fileName, string account,
            FileSystemRights rights, AccessControlType controlType)
        {
            FileSecurity fSecurity = File.GetAccessControl(fileName);
            fSecurity.RemoveAccessRule(new FileSystemAccessRule(account,rights, controlType));
            File.SetAccessControl(fileName, fSecurity);
        }

 

 

 调用:


//给everyone添加读取权限
AddFileSecurity("test.txt""everyone", FileSystemRights.Read, AccessControlType.Allow);

//移除everyone的读取权限
RemoveFileSecurity("test.txt""everyone", FileSystemRights.ReadData, AccessControlType.Allow);

 

 

posted on 2010-01-13 12:04  迷你软件  阅读(398)  评论(0编辑  收藏  举报

本网站绝大部分资源来源于Internet,本站所有作品版权归原创作者所有!!如有以下内容:章节错误、非法内容、作者署名出错、版权疑问、作品内容有违相关法律等请及时与我联系. 我将在第一时间做出响应!本站所有文章观点不代表同意其说法或描述,仅为提供更多信息,也不构成任何建议。