Как изменить свойства расшаренной папки? - C#
Формулировка задачи:
DirectoryInfo dInfo = new DirectoryInfo(@"C:\LabsData");
DirectorySecurity dSecurity = dInfo.GetAccessControl();
// Add the FileSystemAccessRule to the security settings.
dSecurity.AddAccessRule(new FileSystemAccessRule("COMP2\\Все",
FileSystemRights.FullControl | FileSystemRights.Write,
AccessControlType.Allow));
// Set the new access settings.
dInfo.SetAccessControl(dSecurity);
dSecurity.AddAccessRule(new FileSystemAccessRule("Все",
FileSystemRights.FullControl ,
AccessControlType.Allow));
что интересно, так ошибку не выдает - все исполняется. однако результата нет!
Решение задачи: «Как изменить свойства расшаренной папки?»
textual
Листинг программы
using System.Security.AccessControl;
using System.IO;
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
public static void AddFileSecurity(string fileName, string account,
FileSystemRights rights, AccessControlType controlType)
{
// Get a FileSecurity object that represents the
// current security settings.
FileSecurity fSecurity = File.GetAccessControl(fileName);
// Add the FileSystemAccessRule to the security settings.
fSecurity.AddAccessRule(new FileSystemAccessRule(account,
rights, controlType));
// Set the new access settings.
File.SetAccessControl(fileName, fSecurity);
}
private void button1_Click(object sender, EventArgs e)
{
try
{
string fileName = @"C:\System Volume Information";
//получаем имя компьютора и пользователя
System.Security.Principal.WindowsIdentity wi = System.Security.Principal.WindowsIdentity.GetCurrent();
string user = wi.Name;
// Add the access control entry to the file.
AddFileSecurity(fileName, @user,
// ПОЛНЫЙ ДОСТУП!!!!!!!!
FileSystemRights.FullControl, AccessControlType.Allow);
}
catch (Exception ex)
{
MessageBox.Show(ex.ToString());
}
}