2017-01-26 5 views
0

Я хочу, чтобы в папке% appdata% пользователя создавалась папка, но она не может записать файл внутри папки, он говорит «Доступ запрещен», я googled это, но ничего не работало для меня.VB.NET% appdata% access access denied

Dim SpecialAppData As String = GetFolderPath(Environment.SpecialFolder.ApplicationData) 
     Dim CLOUDSAVEDFILESCFG As String = SpecialAppData & "\da_dev\clientsettings\cloud\" 
     If System.IO.Directory.Exists(SpecialAppData & "\da_dev\clientsettings\cloud\") Then 

     Else 
      System.IO.Directory.CreateDirectory(SpecialAppData & "\da_dev\clientsettings\cloud\") 
     End If 
     timeout(0.5) 
     Dim objWriterCSF As New System.IO.StreamWriter(CLOUDSAVEDFILESCFG) 
     TextBox1.Text = My.Settings.username 
     TextBox2.Text = My.Settings.password 
     If My.Computer.FileSystem.FileExists(SpecialAppData & "\da_dev\clientsettings\cloud\" & "files.cfg") Then 

     Else 
      objWriterCSF.Write("0") 
      objWriterCSF.Close() 
     End If 

Ошибка:

picture_of_error

EDIT:

Я заметил, что картина говорит, что он не может найти путь, я установил, что, но теперь я получаю вопрос:

pic

+0

Это показывает, что он не может найти часть этого пути – Plutonix

ответ

3

Вы не можете «открыть файл», который на самом деле является каталогом.

Dim CLOUDSAVEDFILESCFG As String = SpecialAppData & "\da_dev\clientsettings\cloud\" 

CLOUDSAVEDFILESCFG указывает на каталог.

0

Ошибка ее e не означает, что доступ запрещен, но каталог не существует. Вы можете использовать Directory.CreateDirectory(Path.GetDirectoryName(CLOUDSAVEFILESCFG)), чтобы убедиться, что каталог существует, прежде чем пытаться создать в нем файл.

0

Решено:

Забыл добавить файл за CLOUDSAVEDFILESCFG ...

Как это:

Dim objWriterCSF As New System.IO.StreamWriter(CLOUDSAVEDFILESCFG & "\files.cfg")