Seite 1 von 1
Wurde ein neues Fenster geöffnet?
Verfasst: 15.06.2006 18:07
von roherter
Wie kann ich herausbekommen ob ein anderes Programm ein fenster öffnet,dh. ein Programm welches nicht über mein Programm gestartet wurde.
Findwindow kenne ich aber das hilft mir hier ja noch nicht weiter!

Verfasst: 15.06.2006 18:20
von PBZecke
Vieleicht doch, mit Findwindow findest Du das handle des Hauptfensters der
Anwendung, und mit FindWindowEx suchst Du dann nach deren Childwindows
Verfasst: 15.06.2006 18:31
von AND51
Ich kenne EnumWindows_() nicht, denke aber das man damit alle Windows durchgehen kann und würde ähnlich wie PBKlette arbeiten: Speicher doch alle Fenster in einer LinkedList und vergleiche laufend!
Verfasst: 15.06.2006 18:49
von Jilocasin
> ich kenne EnumWindows_() nicht
jetzt schon:
Code: Alles auswählen
Procedure.l EnumProcedure(WindowHandle.l,Parameter.l)
Shared EnumHandle.l
Shared EnumName.s
Title.s = Space(200)
GetWindowText_(WindowHandle,@Title,200)
If FindString(Title,EnumName,1)
EnumHandle = WindowHandle
ProcedureReturn 0 ; stoppt die suche
Else
EnumHandle = 0
ProcedureReturn 1 ; lässt sie weiterlaufen
EndIf
EndProcedure
Procedure FindWindow(Name.s)
Shared EnumName
Shared EnumHandle
EnumName = Name
EnumWindows_(@EnumProcedure(),0)
ProcedureReturn EnumHandle
EndProcedure
Debug FindWindow("PureBasic")