Jump to content

Sky Slate Blueberry Blackcurrant Watermelon Strawberry Orange Banana Apple Emerald Chocolate
Photo

Programm automatisch mit Timer starten



  • Please log in to reply
2 replies to this topic
GunDalf
  • New members
  • 2 posts
  • Last active: Jul 19 2015 05:29 AM
  • Joined: 15 Jul 2015
Hallo zusammen,


ich bin neu hier, und habe leider keine Ahnung vom Scripten.
Daher bitte ich euch um Hilfe, ich denke für euch ist das ein Klacks.


Also Folgendes:
Ich möchte wenn ich ein Programm A starte, dass sich ein Programm B nach einer festgelgten Dauer (sagen wir 10 Sekunden)
automatisch im Hintergund startet. Ob jetzt minimiert oder maximiert ist erstmal egal.

Es sollte sich auch Programm B selbständig schließen, wenn Pr. A beendet wird.

Zusätzlich brauche ich noch Tastenumbelegungen.

Diese habe ich zum Laufen gebracht, aber die Timersache geht nicht.

Hier mal mein Script (Ich sehe schon euer Schmunzeln , jaja ...)
#IfWinActive Programm Asleep 10000Run, C:\Pfad\Programm B.exebackspace::ESC#MaxHotkeysPerInterval 200
Könnt ihr mir bitte sagen was ich falsch mache, bzw das Ganze ergänzen, damit es funzt.

Vielen Dank im Voraus.


mfG GunDalf

GEV
  • Members
  • 1364 posts
  • Last active: Dec 05 2018 06:05 PM
  • Joined: 23 Oct 2013
✓  Best Answer

Dazu brauchst du einen timer:

um

       ProgrammB zu starten (wenn ProgrammA läuft und ProgrammB nicht)

und

      ProgrammB zu beenden (wenn ProgrammB läuft und ProgrammA nicht):

#Persistent
SetTimer, Starte_Beende_ProgrammB, 500
return

Starte_Beende_ProgrammB:
If (ProcessExist("ProgrammA.exe")) and (!ProcessExist("ProgrammB.exe"))
{
  Sleep, 10000 ; warte 10 Sekunden
  Run, Pfad von ProgrammB.exe
}
else
If (ProcessExist("ProgrammB.exe")) and (!ProcessExist("ProgrammA.exe"))
   Process, Close, ProgrammB.exe
return

ProcessExist(name)
{
Process,Exist,%name%
return Errorlevel
}

!ProcessExist("ProgrammA.exe") bedeutet "ProgrammA.exe existiert nicht"

 

Die Namen  des Prozesses der zwei Programme findest du im Task Manager (Registerkarte Details bei Win8).



GunDalf
  • New members
  • 2 posts
  • Last active: Jul 19 2015 05:29 AM
  • Joined: 15 Jul 2015

Dazu brauchst du einen timer:

um

       ProgrammB zu starten (wenn ProgrammA läuft und ProgrammB nicht)

und

      ProgrammB zu beenden (wenn ProgrammB läuft und ProgrammA nicht):



#Persistent
SetTimer, Starte_Beende_ProgrammB, 500
return

Starte_Beende_ProgrammB:
If (ProcessExist("ProgrammA.exe")) and (!ProcessExist("ProgrammB.exe"))
{
  Sleep, 10000 ; warte 10 Sekunden
  Run, Pfad von ProgrammB.exe
}
else
If (ProcessExist("ProgrammB.exe")) and (!ProcessExist("ProgrammA.exe"))
   Process, Close, ProgrammB.exe
return

ProcessExist(name)
{
Process,Exist,%name%
return Errorlevel
}

!ProcessExist("ProgrammA.exe") bedeutet "ProgrammA.exe existiert nicht"

 

Die Namen  des Prozesses der zwei Programme findest du im Task Manager (Registerkarte Details bei Win8).

Hey vielen Dank,

 

funktioniert wie gewünscht!

 

Super Sache.