Zitat von
turboPASCAL:
Wie gesagt, du weist ja nicht wie der Programierer das Plugin gebaut hat. Ob es sich um eine Form wie in Delphi, VB etc. als Standalone, Dialog etc. dich darstellt.
Desswegen wird es auch schwehr mit FindWindow das
Handle zu finden und sich dan die WndProc zu holen und oder umzubigen.
Du kontest aber versuchen das Pluginfenster auf dein Fenster zu kleben...
Es gibt ja nur 2 möglichkeiten
entweder ich bekomme das HWND über
PluginHandle := GetWindow(VisInfo^.VisModule^.hwndParent, GW_HWNDPREV);
oder es wird ein wert 0 zurückgegeben.
In 90% aller fälle ist das
handle vorhanden.
Die anderen 10 sind meistens plugins welche sich selbst andocken.
Mein problem ist das hier erstellte 'Winamp v1.x' in das Window meiner Anwendung einzufügen.
Das
Handle ist immer bekannt da es ja im Thread selbst erstellt wird.
Nur es verliert den Focus sobald ich es in meine Form verschiebe.
dann läuft die routine nicht mehr durch weil sich die reihenfolge kindfenster,Parentfenster,Child-fenster
geändert hat.
wenn alle stricke reißen werd ich es wohl mit GetwindowRec machen müssen.
Nur das ist extrem CPU lastig da es mein Window immer verfolgen muss
sobald es verschoben wird.
grüße