hwnd aus Instanz heruasfinden
-
Hallo,
kann ich anhand meiner Programminstanz das hwnd ermitteln?
Wenn ja, wie ?danke
m.f.G. Daniel Lang alias Fireface
-
Hallo Daniel Lang, bitte drücke dich besser aus.
-
Ich glaube gelesen zu haben, dass eine Instanz mehrere Handles haben kann. Daher dürfte es schwierig werden dort ein bestimmtes zu bekommen.
mfg
-
Also ein Fenster aus einer Programminstanz ermitteln ist definitiv nicht möglich, da (wie mirkos schon so treffend bemerkt hat) eine Programminstanz durchaus mehr als ein Fenster haben kann. Du kannst deinen Fenster aber auf eine der folgenden Weisen ermitteln:
-
Du enumerierst alle Fenster z.B. mit der EnumWindows Funktion.
Vorteil: Du kriegst alle Toplevel Windows. (Mit EnumChildWindows auch die zugehörigen Childs und Controls)
Nachteil: Du musst schon wissen was für einen Titel, etc. dein Fenster hat. (Auch dein Instanzhandle wäre dabei möglich, aber wie gesagt da könntest du mit mehr als einem Handle enden) -
Du kennst die resourcen id von deinem Fenster (wenn es z. B. ein Dialog ist).
Dann kannst Du die Funktion GetDlgItem missbrauchen, um dein Fensterhandle zu erhalten. (Ja die Funktion funktioniert nicht nur in Dialogen).
Ich hoffe das hilft Dir weiter
HoWeR
-