Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Win32/Win64 API (native code) (https://www.delphipraxis.net/17-win32-win64-api-native-code/)
-   -   Delphi FindWindow Problem mit Winamp (https://www.delphipraxis.net/45866-findwindow-problem-mit-winamp.html)

Ganymed 13. Mai 2005 11:00


FindWindow Problem mit Winamp
 
Liste der Anhänge anzeigen (Anzahl: 1)
Hi!

Ich habe ein kleines Problem mit meinem Winamp-Plugin. Ich will damit die Playlist überwachen und seteuern und hole mir dazu das Handle des Playlist Editors, hooke mich ein und verschicke Messages.
So inetwa:
Delphi-Quellcode:
var
hWinampPE: THandle;
begin
hWinampPE := FindWindow('Winamp PE', nil);
SendMessage(hWinampPE, [...] );
Das funktioniert sogar ganz wunderbar! :-D
Dann hab ich mir aber dieses Skin runtergeladen und schon geht nix mehr.
Aus irgendwelchen Gründen bekomme ich kein Handle mehr (hWinampPE = 0). Und damit kann ich alles andere vergessen.
Laut Winspy ist es aber noch da. So genau verstehe ich das Ergebnis zwar nicht, aber ich vermut mal, dass es kein "richtiges" bzw. "eigenständiges" Fenster mehr ist, sondern vielleicht eher eine Komponente?

Wie bekomme ich nun das Handle von dem Ding?

Danke im Voraus

Ganymed

CalganX 13. Mai 2005 13:38

Re: FindWindow Problem mit Winamp
 
Hi,
du wirst wohl nicht drumherum kommen Delphi-Referenz durchsuchenEnumWindow(s) zu verwenden ([dp="EnumWindow*"]1[/dp], [cl="EnumWindow*"]2[/cl], [msdn:9c57d8f00f="EnumWindow*"]3[/msdn:9c57d8f00f]). Damit gehst du alle Fenster durch und guckst, ob etwas dabei, das wie Winamp aussieht. Unter Umständen musst du dann noch die Kind-Fenster/-Controls durchgehen um die Playlist zu finden.

Chris

Ganymed 16. Mai 2005 14:25

Re: FindWindow Problem mit Winamp
 
Ja, das hab ich schon probiert, aber irgendwie muss ich da was falsch gemacht haben.
Ich hab nur ein einziges Handle bekommen, und das hat nicht mal zu irgendetwas gepasst, was WinSpy gezeigt hatte...

barf00s 19. Mai 2005 08:34

Re: FindWindow Problem mit Winamp
 
@chakotay

dein msdn link is ein wenig vermurxt
EnumWindows


@ganimed

ne weitere möglichkeit wäre es, dir den windowsstyle bzw den windowsextendedstyle vom winamppe.hwnd zu holen und zu prüfen obs sich denn noch um ein "0815" fenster handelt, wenn dem nich so is, könnte mans wieder so umstelln das es wieder ein normales fenster ist.

GetWindowLong
&
SetWindowLong

sind deine Freunde


Alle Zeitangaben in WEZ +1. Es ist jetzt 12:05 Uhr.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz