Bat - Aufgabenplanung geht nur mit "Nur ausführen, wenn Benutzer angemeldet ist"
Hallo,
wir haben hier eine kleine bat die einwandfrei funktioniert, auch in der Aufgabenplanung ausgeführt wenn "Nur ausführen, wenn Benutzer angemeldet ist" aktiviert ist. Schalten wir das ganze um auf "Unabhängig von der Benutzeranmeldung ausführen" funktioniert das ganze nicht mehr.
Das ganze ist ein Windows 7 System, dessen einzige Aufgabe es ist eine Filemaker Datenbank zur Verfügung zu stellen. System ist neu installiert, alle Updates aktuell. Die bat macht folgendes.
1. Sie ruft ein VB script auf, das die Datenbank/Filemaker schließt.
2. Es wird mittels DirSync.exe ein Backup ausgeführt.
3. Mittels CMAIL wird das erstellte logfile vom Backup per eMail versendet.
4. Mittels VB Script wird die Datenbank wieder gestartet.
Das ganze läuft wunderbar wenn wir es manuell öffnen. Ebenso in der Aufgabenplanung läuft es einwandfrei mit "Nur ausführen, wenn Benutzer angemeldet ist". Der Server hat kein eigenen Monitor und wir verbinden uns mittels Remote Desktop auf die Maschine, insofern muss das ganze auch laufen wenn keiner am System angemeldet ist.
Das ganze muss wohl etwas mit den Gruppenrichtlinien zu tun haben, soweit unsere recherche. Deswegen haben wir den Account Administrator aktiviert, verbinden uns inzwischen mit dem Account Administrator mit dem System und lassen damit den Task in der Aufgabenplanung laufen. Aber es funktioniert nicht.
Kann uns jemand helfen wie wir das Ding zum laufen bekommen ohne das ein Benutzer angemeldet ist?
Danke
wir haben hier eine kleine bat die einwandfrei funktioniert, auch in der Aufgabenplanung ausgeführt wenn "Nur ausführen, wenn Benutzer angemeldet ist" aktiviert ist. Schalten wir das ganze um auf "Unabhängig von der Benutzeranmeldung ausführen" funktioniert das ganze nicht mehr.
Das ganze ist ein Windows 7 System, dessen einzige Aufgabe es ist eine Filemaker Datenbank zur Verfügung zu stellen. System ist neu installiert, alle Updates aktuell. Die bat macht folgendes.
1. Sie ruft ein VB script auf, das die Datenbank/Filemaker schließt.
2. Es wird mittels DirSync.exe ein Backup ausgeführt.
3. Mittels CMAIL wird das erstellte logfile vom Backup per eMail versendet.
4. Mittels VB Script wird die Datenbank wieder gestartet.
Das ganze läuft wunderbar wenn wir es manuell öffnen. Ebenso in der Aufgabenplanung läuft es einwandfrei mit "Nur ausführen, wenn Benutzer angemeldet ist". Der Server hat kein eigenen Monitor und wir verbinden uns mittels Remote Desktop auf die Maschine, insofern muss das ganze auch laufen wenn keiner am System angemeldet ist.
Das ganze muss wohl etwas mit den Gruppenrichtlinien zu tun haben, soweit unsere recherche. Deswegen haben wir den Account Administrator aktiviert, verbinden uns inzwischen mit dem Account Administrator mit dem System und lassen damit den Task in der Aufgabenplanung laufen. Aber es funktioniert nicht.
Kann uns jemand helfen wie wir das Ding zum laufen bekommen ohne das ein Benutzer angemeldet ist?
Danke
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 308130
Url: https://administrator.de/forum/bat-aufgabenplanung-geht-nur-mit-nur-ausfuehren-wenn-benutzer-angemeldet-ist-308130.html
Ausgedruckt am: 11.04.2025 um 05:04 Uhr
6 Kommentare
Neuester Kommentar
Hallo,
es tut mir leid, dir das sagen zu müssen, aber die Informationen reichen hierbei leider überhaupt nicht aus. Der Fehler könnte überall sein.
Startet das Skript überhaupt? Also wird es aufgerufen?
Füge doch einfach ein paar Zeilen ala "echo Befehl '<hier befehl der Vorzeile rein kopieren>' wurde ausgeführt mit dem Ergebnis %errorlevel% >> C:\log.txt"
und überprüfe, wo es abbricht. Der befehl, der nicht mehr im log steht, scheitert also.
Desweiteren wäre das Eventlog interessant. Erhälst du irgendeinen Eintrag?
Was wird dir nach dem Start der Aufgabe unter Status angezeigt (bzw. unter letzter Start)?
Und vieles mehr....
es tut mir leid, dir das sagen zu müssen, aber die Informationen reichen hierbei leider überhaupt nicht aus. Der Fehler könnte überall sein.
Startet das Skript überhaupt? Also wird es aufgerufen?
Füge doch einfach ein paar Zeilen ala "echo Befehl '<hier befehl der Vorzeile rein kopieren>' wurde ausgeführt mit dem Ergebnis %errorlevel% >> C:\log.txt"
und überprüfe, wo es abbricht. Der befehl, der nicht mehr im log steht, scheitert also.
Desweiteren wäre das Eventlog interessant. Erhälst du irgendeinen Eintrag?
Was wird dir nach dem Start der Aufgabe unter Status angezeigt (bzw. unter letzter Start)?
Und vieles mehr....
Die WScript - also alle - musst du definitiv mit einem absoluten Pfad aufrufen!
Dein Fehler ist, du verwendest "WScript.exe" und nicht "Cscript.exe".
Der Shell (explorer.exe) Handler ist nicht verfügbar, wenn niemand angemeldet ist. Deshalb die Kommandozeilenversion verwenden.
Hier steht noch etwas mehr dazu: https://stackoverflow.com/questions/25733028/windows-task-scheduler-not- ...
Der Shell (explorer.exe) Handler ist nicht verfügbar, wenn niemand angemeldet ist. Deshalb die Kommandozeilenversion verwenden.
Hier steht noch etwas mehr dazu: https://stackoverflow.com/questions/25733028/windows-task-scheduler-not- ...

Hi.
You should could close it by WMI and the terminate command.
Regards
Set WshShell = WScript.CreateObject("WScript.Shell")
WshShell.AppActivate ("FileMaker Pro Advanced - [_START]")
WshShell.SendKeys "%{F4}"
This will never work unattended because this UI automation works only if the session has an active explorer session...This is the reason why it is only working when someone is logged on.WshShell.AppActivate ("FileMaker Pro Advanced - [_START]")
WshShell.SendKeys "%{F4}"
You should could close it by WMI and the terminate command.
Regards