Alle Fensterhandle einer Anwendung ermitteln (erledigt)

Anfängerfragen zum Programmieren mit PureBasic.
enigma
Beiträge: 52
Registriert: 13.09.2011 13:52

Alle Fensterhandle einer Anwendung ermitteln (erledigt)

Beitrag von enigma »

Hallo,
obwohl ich lange gegoogelt und auch das Forum durchsucht habe finde ich keine Antwort auf meine Frage: Wie kann ich die handle aller Fenster einer Anwendung ermitteln (auch Button und so)? Wenn ich das Hauptfenster kenne müsste es doch eine Möglichkeit geben alle dazugehörigen Fenster zu ermitteln, oder? Zum Beispiel Winamp: Das Hauptfenster finde ich so" hwnd_winamp = FindWindow("Winamp v1.x",NULL)" . Kann ich nun mit dem Wissen alle anderen Fenster, Button ermitteln? Wenn ja, wie?

Schon mal besten Dank

Enigma
Zuletzt geändert von enigma am 16.11.2013 11:33, insgesamt 2-mal geändert.
Benutzeravatar
RSBasic
Admin
Beiträge: 8047
Registriert: 05.10.2006 18:55
Wohnort: Gernsbach
Kontaktdaten:

Re: Alle Fensterhandle einer Anwendung ermitteln

Beitrag von RSBasic »

Aus privaten Gründen habe ich leider nicht mehr so viel Zeit wie früher. Bitte habt Verständnis dafür.
Bild
Bild
enigma
Beiträge: 52
Registriert: 13.09.2011 13:52

Re: Alle Fensterhandle einer Anwendung ermitteln

Beitrag von enigma »

Boa, das ging ja schnell! Besten Dank.

Jetzt muss ich nur mal versuchen das mit Winamp hinzukriegen. :roll:

Versuch macht klug

Danke
Enigma
Benutzeravatar
RSBasic
Admin
Beiträge: 8047
Registriert: 05.10.2006 18:55
Wohnort: Gernsbach
Kontaktdaten:

Re: Alle Fensterhandle einer Anwendung ermitteln

Beitrag von RSBasic »

Du brauchst nur die Handle-Nummer vom Winamp-Fenster. Du kannst entweder mit FindWindow_() oder mit Enumwindows_() ermitteln.
Beispielcode mit FindWindow_():

Code: Alles auswählen

Winamp_Handle = FindWindow_("Winampclassoderso", #Null)
Um den Klassennamen dieses Fensters herauszufinden, kannst du das folgende Programm herunterladen: http://www.rsbasic.de/temp/WinSpy.exe
Den Klassennamen trägst du im ersten Parameter ein und die zurückgegebene Handle-Nummer kannst du bei EnumChildWindows_() übergeben. Dann werden alle Unterfenster (Controls usw.) ermittelt und ausgegeben.
Aus privaten Gründen habe ich leider nicht mehr so viel Zeit wie früher. Bitte habt Verständnis dafür.
Bild
Bild
Benutzeravatar
Kiffi
Beiträge: 10714
Registriert: 08.09.2004 08:21
Wohnort: Amphibios 9

Re: Alle Fensterhandle einer Anwendung ermitteln

Beitrag von Kiffi »

wenn es Dir hauptsächlich um Winamp geht: Es gibt Tools (plugins?), mit denen man
Winamp via TCP/IP fernsteuern kann. Damit könntest Du den Player mit den normalen
Netzwerk-Befehlen von PB aus kontrollieren.

Einfach mal mit der INet-Suchmaschine Deiner Wahl recherchieren: winamp remote control network

Grüße ... Kiffi
a²+b²=mc²
enigma
Beiträge: 52
Registriert: 13.09.2011 13:52

Re: Alle Fensterhandle einer Anwendung ermitteln

Beitrag von enigma »

@RSBasic
danke, werde es heute Abend testen.

@Kiffi
es geht nicht um Winamp - habe es nur als Beispiel genommen weil es mehrere Fenster hat.
Aber auch dir ein Danke.

Gruß
Enigma
enigma
Beiträge: 52
Registriert: 13.09.2011 13:52

Re: Alle Fensterhandle einer Anwendung ermitteln

Beitrag von enigma »

getestet und für gut befunden :D

Macht genau das was ich wollte.

Vielen Dank für eure Hilfe
Enigma
Antworten