Environment.SpecialFolder.ApplicationData renvoie le dossier incorrect

J’ai un problème étrange: mon application .NET 4.0 WPF enregistre des données dans le dossier ApplicationData.

Environment.GetFolderPath(Environment.SpecialFolder.ApplicationData) + "\\myProgram\\"; 

99,9% des cas fonctionnent bien, mais sur certains ordinateurs, le dossier est incorrect – au lieu de renvoyer le dossier utilisateur, il renvoie un autre dossier:

 C:\Users\\AppData\Roaming\myProgram\ --correct C:\Users\s\AppData\Roaming\myProgram\ --wrong 

Le mauvais dossier n’a pas de permission d’écriture / lecture, donc mon programme ne fonctionne pas.

Il semble que le programme s’exécute sous un utilisateur différent, mais si je vérifie le Gestionnaire des tâches, l’utilisateur est connecté.

Le problème semble se produire avec les utilisateurs de domaine avec peu d’permissions.

 Environment.GetFolderPath(Environment.SpecialFolder.ApplicationData); 

créez-vous un fichier texte à écrire que vous voulez?

et vous devez également affecter une variable, par exemple:

 Ssortingng path = Environment.GetFolderPath(Environment.SpecialFolder.ApplicationData); if(File.Exists(path + "filetowrite.log")) { ...................... } 

aussi avant de vérifier le fichier, vérifiez si le répertoire existe pour être plus sûr. salutations j’espère vous aider.