Wie starte ich ein Programm mit Admin-Rechten in einer Batch-Datei?

8

Wie starte / rufe ich eine Batch-Datei von einer anderen, aber mit Administratorrechten, so dass es keine Fehler wie die folgenden gibt?

  

Zugriff verweigert Fehlercode 5

Hier ist etwas, wie ich es gerne hätte.

%Vor%     
cmd 04.08.2013, 16:04
quelle

6 Antworten

2

Manchmal sind Dienstprogramme von Drittanbietern wie AutoIt (siehe runas Funktion) sind keine Option - aber wenn Sie diese Option haben, überprüfen Sie es, da Sie damit genau das machen können, was Sie anstreben. Sie können dann das AutoIt-Skript über Ihr Skript aufrufen und dessen Runas-Funktion verwenden.

Windows runas unterstützt die Angabe eines Kennworts nur, wenn Sie mit der Option /savecred zufrieden sind - das ist in Ordnung, wenn Sie die Aufgabe nur von einem einzigen Computer ausführen. Beim ersten Mal werden Sie nach einem Passwort gefragt, danach wird es nicht mehr funktionieren (Sie müssen jedoch bei jeder Verwendung die Option /savecred verwenden). Ich habe das Gefühl, dass dies ein riesiges Sicherheitsloch sein könnte. Aber da es scheint, dass dies für Ihre eigene Maschine ist, verwenden Sie dies in Ihrer Charge:

%Vor%

Eine andere Möglichkeit besteht darin, eine geplante Aufgabe zu erstellen, die von Ihrem Skript aufgerufen werden kann. Sie können es über die Benutzeroberfläche oder über eine erhöhte Befehlszeile als hier beschrieben .

Sie können es dann von Ihrem Skript wie folgt aufrufen:

%Vor%     
fzzylogic 04.08.2013 18:23
quelle
2

Legen Sie die bat-Datei einfach in das Windows-Verzeichnis und es wird als Administrator ausgeführt. Ich habe es selbst versucht, und es hat funktioniert:

%Vor%

Es sollte so funktionieren.

    
Tony TCG 27.04.2014 17:52
quelle
2

Innerhalb der Batch-Datei selbst gibt es keine Möglichkeit, als Administrator zu arbeiten. Wenn Sie jedoch die Batch-Datei aus einer .VBS-Datei heraus starten, können Sie einen 'runas' -Parameter angeben.

%Vor%

Dadurch wird Ihre Batch-Datei als Administrator gestartet, und Sie können die Shell-Anzeige aktivieren oder deaktivieren (in diesem Beispiel wird sie ausgeblendet, weil mein Programm im Hintergrund ausgeführt werden soll, ohne dass es sichtbar ist).

    
James 13.11.2014 13:28
quelle
1

Rechtsklick - & gt; Als Administrator ausführen.

Ich denke, Microsoft hat so viel wie möglich gemacht, um zu verhindern, dass das Batch-Skript selbst Administratorrechte bekommt.

    
Jean-Michaël Celerier 04.08.2013 16:34
quelle
1

@cmd , ich postete ein Beispiel ( Wie kann ich effektive Berechtigungen eines Benutzers aus einem Batch-Skript testen? ) um ein weiteres bat file mit% auszuführen co_de% und ShellExecute Rechte (nur wenn es benötigt wird).

Schauen Sie, ob Sie suchen und was Sie brauchen. Wenn nicht, lassen Sie es mich wissen und wir könnten Ihr Skript anpassen, damit es funktioniert.

viel Glück

    
gmo 05.08.2013 07:36
quelle
1

Ganz gleich, auf welche Weise Sie sich entschieden haben, Sie müssen es mit Administratorrechten ausführen, also ist der Punkt kürzer? Du könntest Right Click > Run as administrator als jean-Michael sagen, obwohl ich james Ansatz bevorzuge (mit vbScript) aber wenn du keine andere vbScript-Datei benutzen willst und nur von Vorteil willst Klicken Sie einfach auf Batch-Datei und akzeptieren Sie Ausführen mit Admin-Privileg (Hinweis, Sie haben einen Rechtsklick und Linksklick weniger) Ich empfehle Ihnen dies:

Erstellen Sie eine Verknüpfung aus Ihrer Batchdatei und klicken Sie mit der rechten Maustaste auf Verknüpfung & gt; Eigenschaften & gt; Verknüpfungsregister & gt; Erweitert Jetzt aktivieren Sie das Kontrollkästchen Als Administrator ausführen . Jedes Mal, wenn Sie es über die Verknüpfung ausführen, müssen Sie nur einen Klick akzeptieren, um es mit Administratorrechten auszuführen.

Hoffe diese Hilfe.

    
QMaster 17.01.2015 10:28
quelle

Tags und Links