Click here to Skip to main content
Sign Up to vote bad
good
See more: C#3.5
Hi,
 
I'm using the following code to restrict a folder in c#, but can't grant permission to access the folder. Can anyone help me please?
 
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.IO;
using System.Security.AccessControl;
using System.Management;
using System.Management.Instrumentation;
using System.Windows.Forms;
 
namespace PermissionToFolder
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
            getusers();
        }
 
        public void getusers()
        {
            SelectQuery squery = new SelectQuery("Win32_UserAccount", "Domain='"+ System.Environment.UserDomainName.ToString() + "'");
            try
            {
                ManagementObjectSearcher msearchar = new ManagementObjectSearcher(squery);
                //ManagementObject mobject = new ManagementObject();
                foreach (ManagementObject mobject in msearchar.Get())
                {
                    cmbPermission.Items.Add(mobject["Name"]);
                }
            }
            catch (Exception e) { MessageBox.Show(e.ToString()); }
        }
 
        private void btnDirectory_Click(object sender, EventArgs e)
        {
            FolderBrowserDialog fbd = new FolderBrowserDialog();
            fbd.ShowDialog();
            txtDirectory.Text = fbd.SelectedPath.ToString();
        }
 
        private void btnPermission_Click(object sender, EventArgs e)
        {
            DirectoryInfo myDirectoryInfo = new DirectoryInfo(txtDirectory.Text);
 
            DirectorySecurity myDirectorySecurity = myDirectoryInfo.GetAccessControl();
            string User = System.Environment.UserDomainName + "\\" + cmbPermission.SelectedItem.ToString();
            myDirectorySecurity.AddAccessRule(new FileSystemAccessRule(User, FileSystemRights.Read, AccessControlType.Deny));
            myDirectoryInfo.SetAccessControl(myDirectorySecurity);
            MessageBox.Show("Permissions Altered Successfully" + User);
        }
    }
}
Posted 24 Dec '10 - 4:43
nhjewel489
Edited 24 Dec '10 - 4:52
JF201551.4K

Comments
JF2015 - 24 Dec '10 - 10:53
Edited to add code formatting.

1 solution

Try running your app as administrator.

  Permalink  
Comments
Marcus Kramer - 24 Dec '10 - 11:40
Good answer, John, good answer!!! (In a Family Feud style response)

This content, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)

  Print Answers RSS
Your Filters
Interested
Ignored
     
0 Sergey Alexandrovich Kryukov 545
1 Maciej Los 270
2 Slacker007 240
3 OriginalGriff 235
4 Aarti Meswania 185
0 Sergey Alexandrovich Kryukov 8,953
1 OriginalGriff 7,134
2 CPallini 3,758
3 Rohan Leuva 3,066
4 Maciej Los 2,528


Advertise | Privacy | Mobile
Web03 | 2.6.130516.1 | Last Updated 8 Mar 2012
Copyright © CodeProject, 1999-2013
All Rights Reserved. Terms of Use
Layout: fixed | fluid