J'ai créé un programme dans Visual Studio. Le programme crée un fichier journal et écrit dedans pendant que le programme est en cours d'exécution. Par conséquent j'ai construit un installateur (setup-project), qui devrait établir des autorisations d'écriture pour mon dossier de programme indépendamment de l'utilisateur qui travaille avec le programme. actuellement, il ressemble à ceci:Définir les autorisations d'écriture pour tous les utilisateurs de mon dossier de programme
// ...
}
InitializeComponent();
string folder = Directory.GetCurrentDirectory();
DirectorySecurity ds = Directory.GetAccessControl(folder);
ds.AddAccessRule(new FileSystemAccessRule("Everyone", //Everyone is important
//because rights for all users!
FileSystemRights.Read | FileSystemRights.Write, AccessControlType.Allow));
}
// ...
Au cours des deux dernières lignes, je reçois un System.SystemException
: « Die Vertrauensstellung zwischen der primären Domäne und der vertrauenswürdigen Domäne konnte nicht hergestellt werden. »
[Traduction: « La relation de confiance entre le domaine principal et le domaine approuvé ne pouvait pas être établie »]
le stacktrace se lit comme suit:.
bei System.Security.Principal.NTAccount.TranslateToSids(IdentityReferenceCollection sourceAccounts, Boolean& someFailed)
bei System.Security.Principal.NTAccount.Translate(IdentityReferenceCollection sourceAccounts, Type targetType, Boolean& someFailed)
bei System.Security.Principal.NTAccount.Translate(IdentityReferenceCollection sourceAccounts, Type targetType, Boolean forceSuccess)
bei System.Security.Principal.NTAccount.Translate(Type targetType)
bei System.Security.AccessControl.CommonObjectSecurity.ModifyAccess(AccessControlModification modification, AccessRule rule, Boolean& modified)
bei System.Security.AccessControl.CommonObjectSecurity.AddAccessRule(AccessRule rule)
bei System.Security.AccessControl.FileSystemSecurity.AddAccessRule(FileSystemAccessRule rule)
Avez-vous une idée de ce que je peux faire? merci
Avez-vous exécuté votre programme d'installation avec des privilèges administratifs? – Dennis
Notez qu'il ya une raison pour les différents dossiers publics sur un système donné pour stocker des données de programme ... – NotMe
Oh, je pensais exécuter l'installateur avec des privilèges administratifs est un paramètre par défaut. Où puis-je chercher ceci? Dans les propriétés de mon projet d'installation, je ne peux pas trouver cela. – Rotaney