Это меня озадачило.
Я работаю в Visual Studio 2015. Возникли проблемы с устаревшим консольным приложением.
Это приложение обычно записывает журналы в C: \ AppName \ Ftp \ Log \ (или D на сервере).
Но внезапно кажется, что FileLogTraceListener пытается проверить путь в папке UserName, прежде чем даже проверять пользовательские настройки.
Так ВСЕ код с использованием My.Application.Log завершается с ошибкой заголовка и InnerException:
{"Не удалось найти часть пути" C: \ Users \ UserName \ AppData \ Roaming \ Go / Gd \ AppName.exe \ 8.1.0.0 '.. "}
и трассировка стека InnerExeption: в System.IO .__ Error.WinIOError (Int32 errorCode, String MaybeFullPath) "& vbCrLf &" в System.IO.Directory.InternalCreateDirectory (String fullPath, путь строки, объект dirSecurityObj, логический checkHost) "& vbCrLf &" в System.IO.Directory.Internal…
Вот часть кода, которую я сейчас пытаюсь запустить. * 1 019 *
My.Application.Log.DefaultFileLogWriter.Location = Logging.LogFileLocation.Custom
Файл app.config содержит:
<system.diagnostics>
<sources>
<!-- This section defines the logging configuration for My.Application.Log -->
<source name="DefaultSource" switchName="DefaultSwitch">
<listeners>
<add name="FileLog"/>
</listeners>
</source>
</sources>
<sharedListeners>
<add name="FileLog"
type="Microsoft.VisualBasic.Logging.FileLogTraceListener,
Microsoft.VisualBasic,
Version=8.0.0.0, Culture=neutral,
PublicKeyToken=b03f5f7f11d50a3a,
processorArchitecture=MSIL"
initializeData="FileLogWriter"/>
</sharedListeners>
</system.diagnostics>
Я попытался добавить информацию о местоположении непосредственно в слушателе, но безрезультатно.
Это началось после обновления. Net framework с. Net 4.5.2 до. Net 4.7.2. (Это решение имеет общие проекты с другим решением, которое нуждается в обновлении), я подозреваю, что это проблема / повреждение в этом проекте, поскольку другие консольные приложения на моем компьютере не имеют проблем при входе в ту же папку с этим FW.