Wie stelle ich eine geplante Windows-Aufgabe so ein, dass sie im Hintergrund ausgeführt wird? [geschlossen]

149

Weiß jemand, wie man eine geplante Aufgabe so einstellt, dass sie mit Windows Task Scheduler im Hintergrund ausgeführt wird?
Es scheint keine Möglichkeit zu geben, dies zu tun.

Samuel Liew
quelle
Hier habe ich versucht, alle möglichen Möglichkeiten zu kompilieren, um einen versteckten Prozess unter Windows ohne externe Tools zu starten. Einschließlich eines Skripts, das eine Aufgabe plant.
Npocmaka
@npocmaka - Link tot - bitte irgendwo als Q & A / Wiki neu posten
Alex S
1
@AlexS - überprüfen Sie dieses
npocmaka
1
Vielleicht hilft jemand: howtogeek.com/tips/…
X-Faktor
Wenn Sie ein PowerShell-Skript ausführen, finden Sie hier die Lösung superuser.com/a/1038142/106079
BBK

Antworten:

216

Wie festgestellt , von Mattias Nordqvist in den Kommentaren unten, können Sie auch das Optionsfeld Option „Run , ob Benutzer angemeldet ist oder nicht“ . Beim Speichern der Aufgabe werden Sie einmal zur Eingabe des Benutzerkennworts aufgefordert. bambams bemerkte, dass dies dem Prozess keine Systemberechtigungen gewähren würde und das Befehlsfenster auch auszublenden scheint.


Es ist keine offensichtliche Lösung, aber um eine geplante Aufgabe im Hintergrund auszuführen, ändern Sie den Benutzer , der die Aufgabe ausführt , in " SYSTEM ", und es wird nichts auf Ihrem Bildschirm angezeigt.

Geben Sie hier die Bildbeschreibung ein

Geben Sie hier die Bildbeschreibung ein

Geben Sie hier die Bildbeschreibung ein

Samuel Liew
quelle
53
Im Grunde ist es also »Entweder sehe ich etwas auf meinem Bildschirm oder die Anwendung erhält über Administratorrechte hinaus«? Hört sich nicht gut an ...
Joey
12
+1 Mein Problem gelöst, danke! Aber warum hat das verwendete Benutzerkonto etwas mit der Sichtbarkeit des Fensters zu tun, und warum tut das Kontrollkästchen "Versteckt", das so klingt, als ob es dies tun sollte, nichts?
Joshua Frank
13
Ja, obwohl dies ein guter Tipp ist, ist es eine schlechte Lösung. Die Aufgabe wird mit Systemprivilegien ausgeführt und kann absichtlich oder unbeabsichtigt Schaden anrichten. Wenn es auf das Internet zugreift, kann jemand Ihr System gefährden. Es wird mit einem anderen Benutzerprofil ausgeführt, sodass% USERPROFILE% an einen anderen Ort aufgelöst wird. Ihre Dokumente werden nicht angezeigt (es sei denn, Sie codieren die Pfade fest). Auf die von ihm erstellten Dateien kann möglicherweise nicht zugegriffen werden (es sei denn, Sie wechseln auch zu admin).
selbst
16
Für den Fall, dass jemand anderes darauf stößt. Ich habe diese Lösung bei Serverfault gefunden, für die keine eskalierenden Berechtigungen erforderlich sind. serverfault.com/questions/9038/…
bronsoja
34
Es gibt einen anderen Weg, dies mit einer anderen möglicherweise akzeptableren Nebenwirkung zu tun. Aktivieren Sie einfach das Kontrollkästchen "Ausführen, ob der Benutzer angemeldet ist oder nicht". Dadurch wird das Programm im Hintergrund ausgeführt. Sie müssen das Benutzerkennwort jedoch einmal eingeben, wenn Sie auf OK klicken.
Mattias Nordqvist
10

Angenommen, die Anwendung, die Sie im Hintergrund ausführen möchten, ist CLI-basiert, können Sie versuchen, die geplanten Jobs mit Hidden Start aufzurufen

Siehe auch: http://www.howtogeek.com/howto/windows/hide-flashing-command-line-and-batch-file-windows-on-startup/

Jay Sidri
quelle
3
Es ist nicht erforderlich, ein neues Programm herunterzuladen. Windows enthält bereits eines. Es heißtstart /b
BlueRaja - Danny Pflughoeft
6
Das Problem dabei startist, dass es sich um einen Befehl und nicht um ein Programm handelt, sodass Sie ihn nicht im Taskplaner verwenden können.
Erik Kaplun
3
cmd.exe /c startmacht den Trick für Befehle, die keine Programme sind.
Hypersw
25
@hypersw ... was wiederum zu einer Eingabeaufforderung führt, die angezeigt wird, während die Aufgabe ausgeführt wird. :)
Camille
3
@hypersw, Cammille ist korrekt, das System erstellt immer noch ein Konsolenfenster für den cmdProzess und den startBefehl, sodass Sie immer noch ein Konsolenfenster haben, das zumindest für einen Moment blinkt. Es verschiebt nur das Problem (und fügt dem Problem eine zusätzliche und unnötige Abstraktionsebene hinzu.
Synetech