Maison >développement back-end >C++ >Comment puis-je élever par programme les privilèges de processus en C # pour exécuter installUtil.exe?
Améliorez les autorisations de processus C # par programmation pour exécuter installUtil.exe
Vous rencontrez des problèmes lorsque vous utilisez pour installer le service. Fragment de code fourni:
Il s'exécute avec succès sous l'invite de commande de promotion, mais échoue lors de l'appel dans votre application.
Process.Start
Solution: promotion des autorisations InstallUtil.exe
<code class="language-csharp">ProcessStartInfo startInfo = new ProcessStartInfo(m_strInstallUtil, strExePath); System.Diagnostics.Process.Start(startInfo);</code>Ce problème provient d'une autorité de processus insuffisante. Pour vous accorder les autorisations pour améliorer votre processus, vous pouvez définir l'attribut
de l'objet
à "runas":Cette commande indique que Windows exécute le processus avec les autorisations de l'administrateur pour simuler l'effet d'appeler son effet via l'option "Exécuter en tant qu'administrateur" dans le gestionnaire de ressources.
Précautions UAC startInfo
Verb
<code class="language-csharp">startInfo.UseShellExecute = true; startInfo.Verb = "runas";</code>
Alternative: incorporé la liste
pour éviter les invites UAC, envisagez d'augmenter l'autorité en intégrant la liste. Cela affichera une invite UAC au moment de l'application et augmentera automatiquement les autorisations de tous ses sous-processus, donc aucune invite supplémentaire.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!