Je veux utiliser la commande runas dans CMD et à partir de fichiers batch pour obtenir des autorisations élevées, mais je n'ai pas de mot de passe administrateur sur mon PC car c'est mon ordinateur personnel et je suis le seul utilisateur. Chaque fois que j'essaie d'utiliser la commande runas, il me demande un mot de passe, puis me dit que les mots de passe vierges ne sont pas autorisés, y a-t-il un moyen de contourner cela? Je sais que je peux simplement cliquer avec le bouton droit et sélectionner exécuter en tant qu'administrateur, mais je préférerais de loin avoir une commande qui peut le faire car ce n'est pas toujours une option, et c'est juste un peu pénible.
Je pourrais simplement faire une sorte d'erreur de base car je n'ai pas une grande expérience de l'invite de commande, mais je ne suis pas complètement ignorant.
la source
Vous pouvez utiliser VBScript pour élever les commandes:
Enregistrez en tant que
*.vbs
puis lancez-le aveccscript
ouwscript
la source
Je pense que vous pouvez utiliser PSexec.exe de SysInternal pour forcer l'élévation.
Vous pouvez par exemple essayer d'exécuter ceci:
psexec \\%computername% -i -h notepad.exe
la source
Comme vous l'avez découvert, runas ne vous permet pas d'exécuter une commande élevée, uniquement en tant qu'utilisateur différent.
L'élévation se produit lorsque vous essayez de démarrer un exécutable qui a été marqué comme nécessitant une élévation, provoquant l'invite UAC. Ce n'est pas seulement une option sur CreateProcess. Donc, si vous exécutez une copie non élevée de cmd et que vous souhaitez qu'il exécute une autre commande ordinaire mais que vous l'exécutiez en hauteur, vous avez besoin d'une commande interlude qui peut l'exécuter pour vous mais est marquée pour l'élévation. C'est compliqué par le fait que les répertoires et les variables d'environnement actuels ne sont pas hérités par l'enfant élevé.
La commande su que j'ai incluse avec mon shell Hamilton C (divulgation complète: je suis l'auteur) a une option sudo qui résout cela et voici comment je l'ai fait: lorsque vous demandez à su d'exécuter une commande élevée, il démarre une copie de lui-même stocké sous elevate.exe marqué pour l'élévation. elevate puis poignées de main à travers la mémoire partagée avec su pour passer les arguments de ligne de commande, les répertoires actuels et l'environnement à travers la limite d'élévation, puis elevate exécute la commande.
la source
Je courais à travers RunAsSpc qui exécutera la commande RunAs, mais incluent la capacité de lecture / écriture avec un crypté de sorte que votre mot de passe ne soit pas exposé.
L'auteur déclare que ces exigences sont remplies en utilisant RunAsSpc
la source
Vous pouvez utiliser l'
su
utilitaire. Il s'élève à travers l'UAC. Vous pouvez le télécharger ici .la source