Script zum flexiblen serienweisen BAT-Start?

Stelle Fragen zur Programmierung mit Autohotkey

Moderator: jNizM

Peter2
Posts: 325
Joined: 21 Sep 2014, 14:38
Location: CH

Script zum flexiblen serienweisen BAT-Start?

26 May 2021, 06:54

(es ist wahrscheinlich nicht schwer, es selbst zu machen, aber falls es das schon gibt...)

Ich habe eine Serie von BAT-Dateien (a.bat, b.bat, .. k.bat), die auch BAT bleiben sollen. Jedes läuft ein paar Minuten. Die müssen ab und zu in unterschiedlicher Zusammensetzung gestartet werde: einmal a,b, c; dann wieder b, e, f, ...
Derzeit läuft das einfach per Doppelklick im Explorer: Doppelklick - warten - Doppelklick ...

Praktisch wäre da ein simples GUI, mit dem ich die BAT wähle - eben z.B. b, e, f - und der startet sauber eins nach dem anderen. Gibt's das schon?
Peter (AHK Beginner) / Win 10 x64, AHK Version v1.1.33
garry
Posts: 3758
Joined: 22 Dec 2013, 12:50

Re: Script zum flexiblen serienweisen BAT-Start?

26 May 2021, 12:45

eine Idee, geht aber der Reihe nach ( sorted ) , starte checked

Code: Select all

#Warn
setworkingdir,%a_scriptdir%
filename1=Run checked BatFiles
tmrx=%a_scriptdir%\MyBatFiles    ;- here are xy.bat files 
extx=bat
Gui,2:default
Gui,2:Color,Black, Black
Gui,2:Font,  S14  ,Lucida Console
Gui,2:Add,ListView,backgroundBlack cYellow x0 y0 w650 h450 +hscroll altsubmit vA1 checked, I|Name|FullPath
LV_ModifyCol(1,60)
LV_ModifyCol(2,250)
LV_ModifyCol(3,0)
LV_ModifyCol(1,"integer")
Gui,2:add,button, x10 y470 w120 h27 gA2,START
Gui,2: Show      , x0  y0   w700 h520,%filename1%
gosub,fillx
return
;-----------------------------------------------------

2Guiclose:
exitapp

;---------------- LISTVIEW ----------------------------
A2:
Gui,2:default
Gui,2:ListView,A1
Gui,2:submit,nohide
GC     :=LV_GetCount()   ; total
Loop ,%GC%
{
Row := LV_GetNext(A_Index - 1, "C")
if (Row = A_Index) 
  {
  LV_GetText(C3, Row, 3)
  ;msgbox, 262208,START ,Start=%c3%,2
  runwait,%comspec% /k %c3%            ;- /k keep DOS window open ;- /c = close DOS window when finished
  msgbox, 262208,ENDED ,Ended=%c3%,3   ; show for 3 seconds
  }
}
return

;---------- Fill-Listview ----------
fillx:
Gui,2:submit,nohide
Gui,2:ListView,A1
I=0
LV_Delete()
Loop, %tmrx%\*.*, 0, 1
 {
 If A_LoopFileExt in %Extx%
   {
   I++
   O=%A_LoopFileName%
   T=%A_LoopFileFullPath%
     LV_Add("Check" 0, I, O, T)
  }
 }
LV_ModifyCol(2, "Sort")
LV_Modify(LV_GetCount(), "Vis")     ;scrolls down
return
;--------------------------------------------------
;=============================================================
Peter2
Posts: 325
Joined: 21 Sep 2014, 14:38
Location: CH

Re: Script zum flexiblen serienweisen BAT-Start?

31 May 2021, 08:56

(Habe wieder kein Mail gekriegt ..)

Danke, schaue es mir in den nächsten Tagen an, muss noch was fertigmachen.
Peter (AHK Beginner) / Win 10 x64, AHK Version v1.1.33
garry
Posts: 3758
Joined: 22 Dec 2013, 12:50

Re: Script zum flexiblen serienweisen BAT-Start?

31 May 2021, 15:03

@Peter2
(Habe wieder kein Mail gekriegt ..)
Normalerweise erhälst Du 'Notications' ( Glocke Zeichen ) auf Deinen Beitrag bzw auch dort wo Du einen Beitrag beantwortet hast
wenn ich @ Peter2 ( zusammenhängend) schreibe erhälst Du 'Private messages' ( Mail Zeichen )
Peter2
Posts: 325
Joined: 21 Sep 2014, 14:38
Location: CH

Re: Script zum flexiblen serienweisen BAT-Start?

07 Jun 2021, 07:09

@garry
ja, aber eigentlich sollte ich auch ein Mail kriegen.

Das Programm läuft schön, vielen Dank. Als einzige Modifikation habe ich bei runwait den Aufruf unter Quotes gesetzt, weil er sonst über die Leerstellen im Pfad stolpert:

Code: Select all

runwait,%comspec% /k "%c3%"
Danke nochmals!
Peter (AHK Beginner) / Win 10 x64, AHK Version v1.1.33

Return to “Ich brauche Hilfe”

Who is online

Users browsing this forum: gero and 29 guests