Programm Starten / Fenster warten bis aktive

Stelle Fragen zur Programmierung mit Autohotkey

Moderator: jNizM

RiesenPuller
Posts: 2
Joined: 02 Aug 2018, 05:22

Programm Starten / Fenster warten bis aktive

02 Aug 2018, 05:28

Hallo,

bin neu hier und habe noch null Ahnung. :?

Könnt Ihr mir vielleicht helfen? Ich bräuchte ein Script was wartet bis ein bestimmtest Fenster aufgebaut ist.
Das Problem was ich habe, ich habe nur den Fensterinhalt, dort steht bspw. "Hallo" in einem Feld.

run "Hier das Programm"
{
ifwinactive , , Hallo
send {enter]
}
return
garry
Posts: 3763
Joined: 22 Dec 2013, 12:50

Re: Programm Starten / Fenster warten bis aktive

02 Aug 2018, 13:43

hier ein Beispiel mit GUI und EDIT
wenn man Start drückt wird einmalig Notepad gestartet ( wenn nicht schon geöffnet ) und der Inhalt von Edit an Notepad gesendet , es können weitere Texte an bereits geöffneten Notepad gesendet werden ( siehe winactivate etc )

Code: Select all

#warn
#NoEnv
setworkingdir,%a_scriptdir%
pr=notepad.exe
sc=ahk_exe notepad.exe
clipboard=
aa=
(ltrim join`r`n
Line-1
Line-2

)
Gui,2: Show       , x10  y10  w430 h200, Titel_02
Gui,2: add, Edit  , x10  y10  w400 h140  vInput,%aa%
Gui,2: Add, Button, x10  y160 w100 h27   gButton_01, Start
Gui,2: Add, Button, x130 y160 w100 h27   gClear,Clear
Return
2Guiclose:
exitapp
clear:
GuiControl,2:,input,
Guicontrol,2:Focus,input
return
Button_01:
Gui,2:submit,nohide
IfWinNotExist,%sc%
 {
 Run, %pr%,,,pid1
 scx:= "ahk_pid " . PID1
 WinWait,%scx%
 }
IfWinNotActive ,%scx%,,WinActivate,%scx%
    WinWaitActive,%scx%
stringreplace,input,input,`n,`r`n,all
clipboard=%input%
send,^v
clipboard=
return
RiesenPuller
Posts: 2
Joined: 02 Aug 2018, 05:22

Re: Programm Starten / Fenster warten bis aktive

03 Aug 2018, 03:12

Hey, erst einmal danke für die Antwort. Leider weiß ich nicht wozu es dienen soll?

Ich habe es bereits anders versucht, über die PID diese ändert sich aber nach dem starten des Programmes.

run, "Hier das Programm",,,PID
WinWait, ahk_pid %PID%
WinActivate, ahk_pid %PID%
send {enter}

Es handelt sich um eine Java Anwendung, gestartet wird es über JAVAWS aber im Task erscheint JP2launcher, die PID ist dann Komplett anders.

Es kann doch nicht so schwer sein, das Script zu sagen, warte bitte bis das Fenster vollständig geladen ist. Mit sleep kann man nicht arbeiten, da die Anmelde Zeiten bei verschiedene Rechner unterschiedlich sind.

Gibt es eine Möglichkeit auf dem Bildschirm nach bestimmten Zeichen zu suchen, wenn diese Aktive zu sehen sind, das er dann {enter] sendet?
User avatar
Ragnar
Posts: 613
Joined: 30 Sep 2013, 15:25

Re: Programm Starten / Fenster warten bis aktive

03 Aug 2018, 07:59

Probier mal ahk_exe jp2launcher.exe anstelle von ahk_pid %PID% aus.

Return to “Ich brauche Hilfe”

Who is online

Users browsing this forum: Google [Bot] and 70 guests