219 votes

Comment demander un accès administrateur à l’intérieur d’un fichier de commandes

Je suis en train d'écrire un fichier de commandes pour mes utilisateurs à exécuter à partir de leurs machines Vista avec l'UAC. Le fichier est à nouveau de la rédaction de leur fichier hosts, il doit être exécuté avec des autorisations d'Administrateur. J'ai besoin d'être en mesure d'envoyer un e-mail avec un lien à la .le fichier bat. Le comportement souhaité est que quand vous cliquez-droit sur le fichier et Ouvrez, ils vont obtenir une de ces boîtes de dialogue contrôle de compte d'utilisateur qui fait que l'écran s'éteignent et que les forces de leur répondre s'ils veulent donner à la demande de l'autorisation d'exécuter en tant qu'administrateur. Au lieu de cela, ils sont juste de voir "Accès refusé" sur la fenêtre de ligne de commande.

Est-ce possible de faire différemment?

425voto

Ben Gripka Points 4885

Ce script fait le tour ! Il suffit de coller dans le haut de votre fichier bat. Si vous souhaitez examiner la sortie de votre script, ajoutez une commande « pause » au bas de votre fichier de commandes.

Ce script est maintenant légèrement révisé pour prendre en charge de la ligne de commande args.

Merci Eneerge @ https://sites.google.com/site/eneerge/scripts/batchgotadmin

4voto

trex005 Points 672

Je sais que ce n'est pas une solution pour l'OP, mais depuis que je suis sûr qu'il y a de nombreux autres cas d'utilisation ici, je pensais que je voudrais partager.

J'ai eu des problèmes avec tous les exemples de code dans ces réponses, mais ensuite, j'ai trouvé : http://www.robotronic.de/runasspcEn.html

Il vous permet non seulement d'exécuter en tant qu'administrateur, il vérifie le fichier pour vérifier qu'il n'a pas été altéré et stocke les informations nécessaires en toute sécurité. Je vais vous avouer que c'est pas le plus évident outil pour comprendre comment l'utiliser, mais pour ceux d'entre nous de l'écriture de code, il devrait être assez simple.

0voto

Anders Points 34448

Vous ne pouvez pas demander admin droits depuis un fichier batch, mais vous pourraient écrire un windows script host dans % Temp% de script et à qui (et que, à son tour exécute votre lot en tant qu’administrateur) vous souhaitez appeler la méthode ShellExecute dans l’objet Shell.Application avec « runas » comme le verbe

-6voto

Josh Points 552

Utilisez la commande runas. Mais, je ne pense pas que vous pouvez envoyer un fichier .bat facilement.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X