La méthode que j'utilise personnellement quand j'ai un programme qui a des besoins d'administrations que de manière très localisé est :
Lorsque l'utilisateur lance une fonction nécessitant ces droits, le programme se relance lui même avec une demande de droits d'administrateur.
Bien sûr il faut fermer l'instance courante quand celle avec admin est lancé.
1 2 3 4
| var info = new ProcessStartInfo(System.AppDomain.CurrentDomain.FriendlyName);
info.UseShellExecute = true;
info.Verb = "runas";
Process.Start(info); |
Sinon, si c'est forcer le lancement en mode administrateur lorsque l'utilisateur demande l'exécution de l'application, c'est avec un "manifest" comme l'on répondu les précédents interlocuteurs.
Il faut remplacer la ligne existante par défaut, après création du "manifest" par :
<requestedExecutionLevel level="requireAdministrator" uiAccess="false" />
Mais peut être que je n'ai pas bien compris la demande.
Partager