2016-12-30 4 views
1

Я хочу создать файл и дать пользователю право на запись.Невозможно установить разрешение на запись в файл

IO.File.Create(Path & "\test.json") 
Dim fs As Security.AccessControl.FileSecurity = IO.File.GetAccessControl(Path & "\test.json") 
Dim far As Security.AccessControl.FileSystemAccessRule = New Security.AccessControl.FileSystemAccessRule("DOMAIN\USER", Security.AccessControl.FileSystemRights.WriteData, Security.AccessControl.AccessControlType.Allow) 
fs.AddAccessRule(far) 

Когда я проверяю вкладку «Безопасность» для этого файла, я не вижу никаких изменений. Окно вывода VS2015 не содержит никаких исключений. VS2015 работает как администратор.

Я использовал это для справки: https://msdn.microsoft.com/en-us/library/d49cww7f(v=vs.110).aspx

ответ

1

Все, что вы изменили в вашем коде является безопасность файлов в памяти. Чтобы применить эти изменения к файлу, вы должны позвонить SetAccessControl.

Например:

File.SetAccessControl(Path & "\test.json", fs) 
+0

У меня было чувство, что это было только в памяти. Ничего себе, я полностью пропустил последний шаг. –