bonjour ,
je doit utiliser une application , qui va avoir besoin des droits sous c#
j'ai reussi en utilisant ce code :
et dans mon formload :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15 private void RunElevated(string fileName) { ProcessStartInfo processInfo = new ProcessStartInfo(); processInfo.Verb = "runas"; processInfo.FileName = fileName; try { Process.Start(processInfo); } catch (Win32Exception) { //Do nothing. Probably the user canceled the UAC window } }
du coup toute mon application tourne avec les droits d'admin .
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10 WindowsPrincipal pricipal = new WindowsPrincipal(WindowsIdentity.GetCurrent()); bool hasAdministrativeRight = pricipal.IsInRole(WindowsBuiltInRole.Administrator); if (!hasAdministrativeRight) { RunElevated(Application.ExecutablePath); this.Close(); }
est-ce une bonne méthode?
ce qui m'embete c'est le fait que l'application s'ouvre 2 fois a cause du application.executablepath .
n'y a t-il pas moyen autrement ( hors manifest ) ?
merci
Partager