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"))
{
     ......................
}

также перед тем, как проверить файл, проверьте, существует ли каталог более уверенным. привет, я надеюсь помочь вам.