Environment.SpecialFolder.ApplicationData возвращает неверную папку
У меня есть странная проблема: мое приложение .NET.NET WPF сохраняет данные в папку ApplicationData.
Environment.GetFolderPath(Environment.SpecialFolder.ApplicationData) + "\\myProgram\\";
99,9% случаев работают отлично, но на некоторых компьютерах он возвращает неправильную папку - вместо того, чтобы возвращать папку пользователя, она возвращает другую папку:
C:\Users\<user>\AppData\Roaming\myProgram\ --correct
C:\Users\s\AppData\Roaming\myProgram\ --wrong
Неправильная папка не имеет права на чтение и чтение, поэтому моя программа не работает.
Кажется, что программа работает под другим пользователем, но если я проверю Диспетчер задач, пользователь будет зарегистрированным.
Проблема возникает с пользователями домена с небольшим количеством разрешений.
Ответы
Ответ 1
Environment.GetFolderPath(Environment.SpecialFolder.ApplicationData);
Создаете ли вы текстовый файл для записи, который вам нужен?
а также вам нужно назначить переменную, например:
String path = Environment.GetFolderPath(Environment.SpecialFolder.ApplicationData);
if(File.Exists(path + "filetowrite.log"))
{
......................
}
также перед тем, как проверить файл, проверьте, существует ли каталог более уверенным. привет, я надеюсь помочь вам.