GELÖST cmd und Aufgabenplaner soll Explorerfenster schließen

Diskutiere cmd und Aufgabenplaner soll Explorerfenster schließen im Win7 - Allgemeines Forum im Bereich Win7 - Allgemeines; Hi liebe Leute. Problem ist das, dass ich die OneDrive-Synchronisation per Aufgabenplaner (Win7) starten lasse, dabei aber immer das...
#1
H

hugoo

Threadstarter
Dabei seit
01.12.2011
Beiträge
18
Hi liebe Leute.

Problem ist das, dass ich die OneDrive-Synchronisation per Aufgabenplaner (Win7) starten lasse, dabei aber immer das Explorer-Fenster mitaufpoppt. Nun habe ich eine cmd zum Fensterschließenlassen geschrieben, die auch gut funktioniert, wenn sie per Hand ausgelöst wird. Via Aufgabenplaner hingegen bekomme ich es bislang nicht hin.

Inhalt der cmd:
closewindow -text="I:\Web-Drive\OneDrive" -class="CabinetWClass" -count=1
exit

Die cmd liegt gemeinsam mit dem Programm CloseWindow.exe in C:\Windows\System32

Einstellung beim Aufgabenplaner:
- Unabhängig von Benutzeranmeldung
- mit höchsten Previlegien

Weiß jemand, was ich falsch mache, bzw. wie das Problem auf anderem (automatischen) Wege zu lösen wäre?

Mit herzlichstem Dank für jede Anteilnahme!
 
#2
areiland

areiland

Dabei seit
05.07.2012
Beiträge
8.690
Warum der Umweg über einen Batch? Trag Closewindow in die Aufgabe als Programm/Script ein und den Rest der Befehlszeile in das Feld "Argumente".

Aufgabe.jpg

Dann sollte die Ausführung auch schon klappen. Ausserdem "Unabhängig von der Benutzeranmeldung" eher nicht aktivieren, das macht eigentlich keinen Sinn. Denn das Explorerfenster öffnet sich ja nicht, wenn Du nicht angemeldet bist. Was hast Du als Auslöser für die Aufgabe eingestellt?
 
#3
H

hugoo

Threadstarter
Dabei seit
01.12.2011
Beiträge
18
Hi Alex, danke für Deine Stellungnahme!

Hat leider nicht funktioniert. "Unabhängig von der Benutzeranmeldung" ist abgewählt. Als Auslöser dient der Zeitplan, 4 x täglich. Allerdings steht Closewindwo (plus Argumente) als zweite Aktion, unter der ersten. Und mit dieser wird auch nicht OneDrive selbst gestartet (hätte ich gleich sagen sollen), sondern eine *.bat. Die führt eine Synchronisation durch, startet dann OneDrv und beendet es nach 15 Minuten.

Ist also etwas kompliziert. Kann man es trotzdem irgendwie hinbekommen?
 
Zuletzt bearbeitet:
#4
areiland

areiland

Dabei seit
05.07.2012
Beiträge
8.690
In dem Fall ist Cmd.exe als Programm und die Batchdatei als Argument einzutragen - dann sollte es funktionieren.
 
#5
H

hugoo

Threadstarter
Dabei seit
01.12.2011
Beiträge
18
Hm. Geht auch mit cmd. exe (Argument: -text="I:\Web-Drive\OneDrive" -class="CabinetWClass" -count=1) nicht. Mir kommt aber ein Verdacht: Hapert's vielleicht am Timing? Bevor die *.bat in der ersten Aktion das Programm OneDrive startet, werden ja 2 Ordner synchronisiert:

rem Name der *,bat ist "Start-Stop OneDrv"
Start "" "C:\Program Files\Allway Sync\Bin\syncappw.exe" -e -m -l -s "4B4D5B87EA7AD189A6AE93140C47AB8E"
timeout /T 60
Start "" "C:\Program Files\Allway Sync\Bin\syncappw.exe" -e -m -l -s "4D7B33B21A3C41AD29A1BFDA2202B7A5"
timeout /T 60
Start "" "C:\Users\xy\AppData\Local\Microsoft\OneDrive\OneDrive.exe"
timeout /T 2000
taskkill /im OneDrive.exe /F
Da könnte sein, dass die cmd.exe gleich nach der *.bat startet, lange bevor OneDrive,exe ausgeführt wird?
 
#6
Skyhigh

Skyhigh

Dabei seit
17.02.2018
Beiträge
118
Ort
Lahr
Ja das wäre möglich, ähnliches Problem mit der Verzögerung hab ich bei meinem Relais das mein SchreibtischLicht steuert. Kannst du probieren indem du zwischen die Zeilen testweise "Ping -n 10 8.8.8.8" einfügst.

Damit pingst du 10x den DNS Server von Google an, und verzögerst somit die Ausführung um 8-10 Sekunden. Du kannst den Wert von -n auch erhöhen um die Verzögerung zu erhöhen. Zum testen ob es am Timing liegt reicht das,
Eleganter wäre es aber über ein VBS Script.
 
#7
areiland

areiland

Dabei seit
05.07.2012
Beiträge
8.690
Nimm mal die Timeouts raus und stell dafür nach "Start" jedesmal ein "/wait" in die Befehlszeile. Dann dann wartet das Script, bis das Programm wieder schliesst. Ausserdem darf jetzt nicht mehr der Befehl zum Schliessen des Explorerfensters als Argument genannt werden, sondern die Batchdatei, die das Ganze ausführt und diesen Befehl nach Abarbeitung des aufgerufenen Batches abarbeitet.

Es sollte also so aussehen:
Code:
rem Name der *,bat ist "Start-Stop OneDrv"
 Start /wait "" "C:\Program Files\Allway Sync\Bin\syncappw.exe" -e -m -l -s "4B4D5B87EA7AD189A6AE93140C47AB8E"
 Start /wait "" "C:\Program Files\Allway Sync\Bin\syncappw.exe" -e -m -l -s "4D7B33B21A3C41AD29A1BFDA2202B7A5"
 Start /wait "" "C:\Users\xy\AppData\Local\Microsoft\OneDrive\OneDrive.exe"
 timeout /T 2000
 taskkill /im OneDrive.exe /F
Ausserdem, gib auch dieser Batchdatei die Endung .cmd!

Prinzipiell könnte man auch auf den Aufruf des zweiten Batches verzichten und das alles in einen einzigen Batch packen.
 
Zuletzt bearbeitet:
#8
H

hugoo

Threadstarter
Dabei seit
01.12.2011
Beiträge
18
Also. Dann sieht die "Start-Stop OneDrive.bat" inhaltlich so aus:

Start/wait "" "C:\Program Files\Allway Sync\Bin\syncappw.exe" -e -m -l -s "4B4D5B87EA7AD189A6AE93140C47AB8E"

Start/wait "" "C:\Program Files\Allway Sync\Bin\syncappw.exe" -e -m -l -s "4D7B33B21A3C41AD29A1BFDA2202B7A5"

Start/wait "" "C:\Users\Wolfs\AppData\Local\Microsoft\OneDrive\OneDrive.exe"
closewindow -text="I:\Web-Drive\OneDrive" -class="CabinetWClass" -count=1

timeout /T 2000
taskkill /im OneDrive.exe /F
Als nunmehr einzige Aktion im Aufgabenplaner habe ich "cmd.exe" (Programm staren) und als Argument "Start-Stop OneDrive.bat" eingefügt.

Einzige Reaktion: es poppt ein cmd Fenster auf. Ich mach also irgendwas falsch. Abgesehen davon, das ja am besten gar kein Fenster sichbar werden soll.

Auch würde ich vermuten, dass nach dem cmd-Fenster, das der Batch-Datei aufpoopt? Vorher hatte ich meine Batch in eine unsichtbar werkelnde *.exe umgewandelt, nur halt nicht hingekriegt, dass das Explorerfenster eine Sekunde später geschlossen würde.
 
#9
H

hugoo

Threadstarter
Dabei seit
01.12.2011
Beiträge
18
Hi Skyhigh, auch Dir vielen Dank, dass Du mit meinem Problem befasst.
Eleganter wäre es aber über ein VBS Script.
Würde ein VBS auch mit dem "/wait" gehen, zu dem Alex mir geraten hat? Oder wie müsste die *.bat oben geändert werden mit den Pings? Was wäre der Vorteil?

Ahnung habe ich praktisch Null; ich bastel mir halt nach Bauanleitungen aus dem Web mühsam ein paar Zeilen zusammen...
 
#10
areiland

areiland

Dabei seit
05.07.2012
Beiträge
8.690
Das kann man sich doch zurecht pfriemeln!
Es muss selbstverständlich zwischen "Start" und "/wait" ein Leerzeichen hin, damit Cmd auch zwischen Befehl und Parameter unterscheidet.
Deshalb sollte es wohl besser so aussehen:
Code:
Start /wait "" "C:\Program Files\Allway Sync\Bin\syncappw.exe" -e -m -l -s "4B4D5B87EA7AD189A6AE93140C47AB8E"
Start /wait "" "C:\Program Files\Allway Sync\Bin\syncappw.exe" -e -m -l -s "4D7B33B21A3C41AD29A1BFDA2202B7A5"
Start /wait "" "C:\Users\Wolfs\AppData\Local\Microsoft\OneDrive\OneDrive.exe"
timeout /T 2000
taskkill /im OneDrive.exe /F 
closewindow -text="I:\Web-Drive\OneDrive" -class="CabinetWClass" -count=1
 
#11
H

hugoo

Threadstarter
Dabei seit
01.12.2011
Beiträge
18
Ok.Start /wait.. pfriemel..pfriemel...

Die Closewindwo-Zeile hab ich jetzt auch mal direkt unter die Start-Zeile von One-Drive gesetzt (ich möcht ja, dass das aufpoppende Explorerfenster sofort weg'geklickt' wird). Einzige Reaktion immer noch: ein cmd-Fenster poppt auf, wartet mit "c:\Windows\system32>" auf eine Eingabe. Ich wollt aber nun nicht statt des Explorer- das cmd-Fenster händisch wegmachen müssen...

Außerdem: Von der "Start-Stop OneDrive.bat" (angegeben als Argument beim Start von cmd.exe) ) wird nichtmal die erste Zeile ausgeführt. Ergo: Total verpfriemelt. :wut :wut :wut :wut :wut :wut :wut :wut :wut :wut
 
#12
Skyhigh

Skyhigh

Dabei seit
17.02.2018
Beiträge
118
Ort
Lahr
Problem gelöst:
verwende zum starten von OneDrive folgende Zeile

Code:
start %LOCALAPPDATA%\Microsoft\OneDrive\OneDrive.exe /background
Hinweis: dafür brauchst du KEINE Adminrechte, sonst gibt es ggf einen Fehler
 
#13
H

hugoo

Threadstarter
Dabei seit
01.12.2011
Beiträge
18
edit
 
Zuletzt bearbeitet:
#14
H

hugoo

Threadstarter
Dabei seit
01.12.2011
Beiträge
18
Super, es funzt!
Aber das mit der cmd.exe brauchts anscheinend nicht.

Die bat hab ich jetzt wie gehabt umgewandelt in eine unsichtbar arbeitende exe und unter "Aktionen" im Augabenplaner direkt angegeben als zu startendes, im Ordner System32 abgelegtes Programm. Hier der Code der bat, falls jemand anderes das gleiche Problem lösen will:

Start /wait "" "C:\Program Files\Allway Sync\Bin\syncappw.exe" -e -m -l -s "4B4D5B87EA7AD189A6AE93140C47AB8E"

start %LOCALAPPDATA%\Microsoft\OneDrive\OneDrive.exe /background

closewindow -text="I:\Web-Drive\OneDrive" -class="CabinetWClass" -count=1

timeout /T 2000

taskkill /im OneDrive.exe /F
Zubehör: BatToExe.exe (zum Umwandeln der bat)
und Close Window.exe. Letzteres muß auch ins Verzeichnis Sytem32.

Skyhigh und Alex, ich danke sehr für Eure Hilfe!
 
Zuletzt bearbeitet:
Thema:

cmd und Aufgabenplaner soll Explorerfenster schließen

Sucheingaben

google aufgabenplanung cmd.exe

cmd und Aufgabenplaner soll Explorerfenster schließen - Ähnliche Themen

  • Probleme mit CMD (automatische Eingabe)

    Probleme mit CMD (automatische Eingabe): Hallo, Ich habe folgendes Problem mit CMD(Eingabeaufforderung): Und zwar immer wenn Ich versuche einen Befehl, den Ich kopiert habe, in CMD...
  • cmd kann keine Nachrichten verschicken!! :-(

    cmd kann keine Nachrichten verschicken!! :-(: Hallo zusammen, möchte gerne über cmd Nachrichten verschicken. C:\Users\Ahmetlaptop>msg /server:ahmettab * test Fehler 1722 beim Abrufen der...
  • CMD kann nicht als Admin ausgeführt werden

    CMD kann nicht als Admin ausgeführt werden: Hallo, ich glaube, ich habe einen Bug bei MS gefunden und weiß nun nicht wohin damit. Mir ist folgendes aufgefallen - nach viel Schweiß und Frust...
  • Wie kann man provozieren, dass ein Programm sich aufhängt, um taskkill (CMD) zu testen?

    Wie kann man provozieren, dass ein Programm sich aufhängt, um taskkill (CMD) zu testen?: Mittels Verknüpfung soll man ein Bordmitteltool erstellen können, das Prozesse abschießt, die nicht mehr reagieren...
  • Aufgabenplanung über CMD - Befehle für "Automatisches beenden" und "Nur Akkumodus" deaktivieren

    Aufgabenplanung über CMD - Befehle für "Automatisches beenden" und "Nur Akkumodus" deaktivieren: Aufgabenplanung über CMD - Befehle für "Automatisches beenden" und "Nur Akkumodus" deaktivieren Moin, ich erstelle mit einem Batch-Skript einen...
  • Ähnliche Themen

    Oben