C#: получить проблему владения папкой

Я пытаюсь получить право собственности на защищенный файл на С#.

System.Security.AccessControl.DirectorySecurity Sec = new DirectorySecurity(directory, AccessControlSections.All);

не работает для меня. Я получаю сообщение об ошибке UnauthorizedAccessException. Поэтому я не могу изменить владельца файла и не могу изменить свои права доступа. Кто-нибудь знает, как установить права доступа к каталогу?


person 1' OR 1 --    schedule 01.06.2011    source источник
comment
Не могли бы вы добавить версию ОС, на которой вы работаете, и используете ли вы UAC (если применимо) и запускаете ли код от имени администратора?   -  person Emond Erno    schedule 01.06.2011
comment
Я использую Windows 7, UAC отключен, и я запускаю свою программу от имени администратора. Это не должно быть причиной. Когда я меняю владельца в проводнике Windows, мой код работает. Но я не могу изменить владельца программно.   -  person 1' OR 1 --    schedule 01.06.2011


Ответы (2)


Похоже, вы (или пользователь, под которым работает ваше приложение) не имеете доступа к каталогу, к которому вы пытаетесь получить доступ.

person Rex Morgan    schedule 01.06.2011
comment
Нет, у пользователя нет доступа к файлу. Но я админ на своем ПК. Моя система владеет файлом. Мне нужно получить к нему доступ. - person 1' OR 1 --; 01.06.2011

Майк О'Брайен опубликовал хороший пост в блоге, решающий мою проблему: http://blog.mikeobrien.net/2009/11/taking-ownership-and-setting-admin.html Это позволяет мне стать владельцем любой папки.

person 1' OR 1 --    schedule 26.04.2012