, когда я пишу в мой лог-файл иногда я получаю доступ для входа путь запрещен C: /app/log.logДоступ к пути входа отрицается случайно
Вот мой код:
Private filePath As String
Private fileStream As FileStream
Private streamWriter As StreamWriter
Public Sub OpenFile()
Dim strPath As String
strPath = My.Application.Info.DirectoryPath + "\log.log"
If System.IO.File.Exists(strPath) Then
fileStream = New FileStream(strPath, FileMode.Append, FileAccess.Write)
Else
fileStream = New FileStream(strPath, FileMode.Create, FileAccess.Write)
End If
streamWriter = New StreamWriter(fileStream)
End Sub
Public Sub WriteLog(ByVal strComments As String)
OpenFile()
streamWriter.WriteLine(Date.Now.ToString & " " & strComments)
CloseFile()
End Sub
Public Sub CloseFile()
streamWriter.Close()
fileStream.Close()
End Sub
В любом случае, чтобы использовать разрешения администратора или устранить эту проблему? Иногда это происходит, и я не уверен, почему это происходит, но если я удалю файл log.log, приложение может снова записать в журнал. Очень странно.
Если это работает * иногда *, это, вероятно, не проблема, а проблема «в использовании». Я удивлен, что у вас нет проблем с разрешениями. Приложения не должны записываться в корневой каталог диска C: \. Вместо этого записывайте файлы журналов в AppData. –
Так как вы создаете новый поток файлов каждый раз, когда вы пишете на него, почему у вас также есть его как общедоступная переменная, которая никогда не удаляется? – Plutonix