Anzeige

Am Puls von Microsoft

Anzeige

[gelöst] Programm um den Autostart tageszeitabhängig zu steuern

Thinky

treuer Stammgast
Ich nutze meinen privaten Rechner fürs Homeoffice und benötige dafür eine Vielzahl von Programmen (Softwaretelefon, vpn, speziellen Browser und mehr). Teilweise starten die ganzen Dinge von alleine, teilweise starte ich sie (noch) manuell.

Nervig: entweder muss ich den Autostart aller Homeoffice Programme manuell anstoßen oder wenn ich meinen Rechner privat nutze, alle Homeofficeprogramme manuell schließen.

Ich bin daher auf der Suche nach einem Programm, in dem ich einstellen kann, dass immer Werktags in der Zeit zwischen x und y Uhr bestimmte Programme gestartet werden und außerhalb dieser Zeiten nicht. Habe es schon mit einem Skript versucht (damit wird es gehen), aber ich bin zu dumm es zu programmieren.

Kennt jemand ein Tool (oder Skript), mit dem man das umsetzen kann?
 
Anzeige

Porky

gehört zum Inventar
Lass' es uns gemeinsam mit anderen Helfern entwickeln. Als Erstes ein Skript um den Wochentag zu ermitteln. Beispiel:
Code:
@echo off

set DOW=

for /f %%g in ('wmic path win32_localtime get dayofweek^|findstr /v /r "^$"') do (set DOW=%%g)

if %DOW%==0 set DOW=Sonntag
if %DOW%==1 set DOW=Montag
if %DOW%==2 set DOW=Dienstag
if %DOW%==3 set DOW=Mittwoch
if %DOW%==4 set DOW=Donnerstag
if %DOW%==5 set DOW=Freitag
if %DOW%==6 set DOW=Samstag

echo.
echo Heute ist %DOW%
echo.

pause
 
Zuletzt bearbeitet:

Thinky

treuer Stammgast
Wie cool ist das denn? Vielen Dank!

Jetzt fehlt ja schon nicht mehr viel, wenn ich das richtig sehe. Eine Zeile, die die Stunde der aktuellen Zeit ausgibt (Minutengenau ist nicht nötig) und eine Zeile in der sinngemäß steht

Wenn DOW gleich Werktag und Stunde zwischen 8 und 15 Uhr, dann starte a) b) c) sonst nichtsu
 

Porky

gehört zum Inventar
Und ein anderes Beispiel:
Code:
@echo off

set YYYY=%date:~-4%
set MM=%date:~-7,2%
set DD=%date:~-10,2%
set hr=%time:~0,2%
if "%hr:~0,1%" == " " SET hr=0%hr:~1,1%
set min=%time:~3,2%
set sek=%time:~6,2%

echo.
echo Es ist heute der %DD%.%MM%.%YYYY%, %hr%:%min%:%sek%
echo.

pause
Damit du selbst weiter experimentieren kannst, jetzt mal ein Skript in meiner eigenen Pseudoprogrammiersprache, die nur zum Lesen gedacht ist:
Code:
:Anfang
Wenn Wochentag nicht Mo und nicht Di und nicht usw.. gehe nach Ende
Starte Programm 1
Starte Programm 2
Starte Programm 3
:Ende
Das Ganze dann in der Aufgabenplanung täglich zu einer bestimmten Uhrzeit starten. So macht's z. B. der Google Updater:
 

Anhänge

  • Trigger bearbeiten.png
    Trigger bearbeiten.png
    18,9 KB · Aufrufe: 44
Zuletzt bearbeitet:

PeteM92

gehört zum Inventar
Ich denke, wenn man in der Aufgabenplanung den Trigger auf "Täglich" mit "Wiederholung alle 7 Tage" einstellt, kann man jedes einzelne Programm sehr zielgenau für jeden Tag einstellen. Das ganze wiederholt sich dann jede Woche
Den Programmstart kann man sogar sekundengenau angeben.

Das muß man zwar für jedes Programm und jeden Tag erstellen, aber man muß nichts programmieren.

1660199738484.png
 

Thinky

treuer Stammgast
In die Aufgabenplanung hatte ich auch schon Hoffnungen gesetzt, aber mir geht es vor allem um folgendes:
ich starte den Rechner um
a) 8 Uhr Montags: Homeofficeprogramme starten
b) 8 Uhr Sonntags: Homeofficeprogramme starten nicht
c) 17 Uhr Montags: Homeofficeprogramme starten nicht
d) 12 Uhr Montags: Homeofficeprogramme starten

Das geht mit der Aufgabenplanung (meines Wissens) nicht.

Damit du selbst weiter experimentieren kannst, jetzt mal ein Skript in meiner eigenen Pseudoprogrammiersprache, die nur zum Lesen gedacht ist:
Die Logik ist mir leider klar, denn die ist ja auch recht einfach, ich schaffe es aber nicht, diese im Prizip einfach Logik in Programmiersprache umzusetzen :(
 

Thinky

treuer Stammgast
Wow, danke!

Ich hatte mit der Beschreibung versucht mein Anliegen etwas genauer zu beschreiben. Das ist mir scheinbar nicht gelungen, daher hier nochmal ein anderer Versuch:

Ich starte meinen Rechner jeden Tag zu unterschiedlichen Zeiten - es gibt keine festen Zeiten. In Abhängigkeit der Startzeit sollen bestimmte Programm gestartet werden oder eben nicht gestartet werden.

Das kann ich über die Aufgabenplanung nicht darstellen, denn dort kann ich nur feste Zeiten einstellen.

Die laienhaft formulierte Logik von Porky ist damit schon das, was ich bräuchte, ich bin halt nur nicht in der Lage, das zu programmieren...
 
Zuletzt bearbeitet von einem Moderator:

Jürgen

Moderator
Teammitglied
Das geht mit der Aufgabenplanung doch,

2 Aufgaben für Montags 1x für 8:00 und 1 x für 12:00 , ist doch schnell gemacht, Und nach Anmeldung durchführen

 

Thinky

treuer Stammgast
Und wenn ich den PC um 9 Uhr starte? Oder um 8:05 Uhr? Wird die Aufgabe dann trotzdem ausgeführt? Wenn ja, wäre es die Lösung, aber ich meine, sie wird dann ignoriert...
 

Thinky

treuer Stammgast
spricht irgend etwas dagegen, es einfach mal auszuprobieren?

müßte, könnte, sollte kann man so ausschließen
Sorry, ich wollte nur höflich sein... Es funktioniert nicht, ich hatte es bereits getestet, bevor ich hier nachgefragt hatte. Ich wollte aber niemandem auf die Füße treten ;)

Macht auch Sinn: wenn eine Aufgabe für Sonntags 8 Uhr geplant ist, der Rechner aber erst fünf Minuten später um 8:05 Uhr gestartet wird, dann wird sie nicht ausgeführt. Darüber könnte man vielleicht diskutieren, was aber ist, wenn der Rechner 5 Stunden oder 5 Tage nach der geplanten Zeit gestartet wird? Daher: wenn der Rechner zur geplanten Zeit nicht läuft, wird die Aufgabe nicht ausgeführt. Zumindest wenn ich nicht etwas anderes übersehen habe.

Deswegen ja nur "ausführen wenn angemeldet" Dann lasse da die Zeit weg
Den Tip verstehe ich nicht. Wie kann ich da steuern, dass die Aufgabe nur Montags bis Freitags zwischen 8 und 15 Uhr nach starten (oder anmelden) des Benutzers ausgeführt wird? (Anmerkung: es gibt nur einen Benutzer auf meinem Rechner)
 

Jürgen

Moderator
Teammitglied
Es gibt mehrere Möglicjhkeiten, entweder einen Wecker stellen, um 7:55 und den PC einschalten, wenn dort der Trigger auf 8:00 steht :D

Oder Du stellst nur wiederkehrend für montags ohne Zeit aber nach Anmeldung des Benutzers bzw Start des PC ein.
Wenn dann nichts passiert, startest du eben mal von Hand das Programm. siehe auch meine Anleitung oben
 

Thinky

treuer Stammgast
Ok, ich weiß, dass man das Problem so wie ich es gerne hätte per Skript (oder Batch) lösen kann. Weil ich aber zu dumm bin, dass hinzubekommen, hatte ich mich hier an Euch gewandt in der Hoffnung entweder ein Programm zu finden, was das von mir gesuchte umsetzt oder Hilfe beim Programmieren des Skriptes zu bekommen.

Ich werde wo anders suchen. Trotzdem danke für Euren Input!
 

skorpion68

gehört zum Inventar
Hallo Thinky,
ist zwar schon etwas älter (März 2008) aber es gibt ein Programm Wochentag.exe (Archiv Release.zip, Beitrag #13) vom User Peter Schirmer, siehe hier Programm nur an bestimmtem Wochentag per Autostart starten?. Du trägst deine HomeOfficeprogramme in die Text Datei Programme.txt ein und startest das Programm Wochentag.exe. Benötigt wir dazu das Feature .NET Framework 3.5 (enthält .NET 2.0 und 3.0).

Wenn du lieber ein Script erstellen möchtest dann schaue mal hier Mit Batch den Wochentag (z.B. Montag) bestimmen? rein. Das Script vom User markus (Beitrag 3) hat sich auch hier How to? - Automatischer Start von Apps abhängig vom Wochentag? #Autostart #bat #Trigger #Scheduler ? - Deskmodder.de für den User aarroz bewährt, siehe Beitrag 4.
 

PeterK

eben noch da
Wäre es nicht einfacher zu dem Vorhandenen Hauptbenutzer (Administrator) einen zusätzlichen Privat und einen HomeOffice Benutzer hinzuzufügen und dann über den Hauptbenutzer zu regeln welche Programme unter Privat und HomeOffice Automatisch gestartet werden.
 

Thinky

treuer Stammgast
Wäre es nicht einfacher zu dem Vorhandenen Hauptbenutzer (Administrator) einen zusätzlichen Privat und einen HomeOffice Benutzer hinzuzufügen [...]
Ja und nein. Ich möchte in beiden Umgebungen gleichartig arbeiten und nicht zwei Profile pflegen müssen, zumal ich gelegentlich von der privaten in die dienstliche Nutzung wechsel und umgekehrt (ja, das ginge über Benutzerwechsel...)

Die am einfachsten umsetzbare Möglichkeit wäre sicherlich eine Batch-Datei, die ich per Doppelklick starte. Ich möchte aber den Automatisierungsgrad erhöhen.
Hast du anderweitig andere Lösungsmöglichkeiten gefunden und diese erfolgreich umsetzen können?
Eine extrem gute, umfangreiche und schon nach zwei Versuchen perfekt funktionierende Lösung habe ich tatsächlich nach viel suchen und testen gefunden, nämlich das Programm Chameleon Startup Manager. Hier kann ich für jeden Wochentag einstellen, in welchem Zeitraum ein Programm gestartet werden soll oder auch für mehrere Wochentage gleichzeitig.

Kostet leider knapp 30,- €, werde ich aber vermutlich investieren, weil das Programm alles macht was ich möchte und noch ein paar Dinge mehr, die nice to have sind :) Die Benutzerführung und die Optik sind nicht die besten, aber damit kann ich bei einem solchen Programm gut leben.
 
Anzeige
Oben