Hi,
ich muss eine andere App fernsteuern.
Zum Finden der zugehörigen Fenster benutze ich folgenden code:
INFO:
Da ich nur einen Teil von manchen Window-Titeln (dynamisch generierte Fenster) im voraus kenne benutze ich partialstring im Vergleich.
Läuft einwandfrei mit Option Explicit On und Option Strict On.
Nun scheitere ich aber an einer Stelle. Offensichtlich macht eins der Fenster die ich ansteuere ein Unterfenster (CHILD ?) auf.
Die oben gezeigte Routine findet dies nicht.
Ich habe dazu einiges gelesen und bin auf
EnumWindows
EnumChildWindows
gestossen.
Dazu habe ich einige Stunden Infos gesammelt und mehrere Ansätze probiert, ich bekomm es aber einfach nicht zum Laufen.
Ich finde mein "Hauptfenster" und das(?) richtige Handle dazu, danach scheitere ich aber am Zugriff auf das Kind-Fenster.
Wie bau ich das in die vorhandene Routine ein ?
Vielen Dank im voraus für Eure Hilfe.
MfG...Mabbi
ich muss eine andere App fernsteuern.
Zum Finden der zugehörigen Fenster benutze ich folgenden code:
VB.NET-Quellcode
- Public Function GetWindowHandle(ByVal partialTitle As String, ByRef Windowtitle As String) As IntPtr
- For Each p As Process In Process.GetProcesses()
- If p.MainWindowTitle.IndexOf(partialTitle, 0, StringComparison.CurrentCultureIgnoreCase) > -1 Then
- Windowtitle = p.MainWindowTitle
- Return p.MainWindowHandle
- End If
- Next
- Return IntPtr.Zero 'No Match Found
- End Function
INFO:
Da ich nur einen Teil von manchen Window-Titeln (dynamisch generierte Fenster) im voraus kenne benutze ich partialstring im Vergleich.
Läuft einwandfrei mit Option Explicit On und Option Strict On.
Nun scheitere ich aber an einer Stelle. Offensichtlich macht eins der Fenster die ich ansteuere ein Unterfenster (CHILD ?) auf.
Die oben gezeigte Routine findet dies nicht.
Ich habe dazu einiges gelesen und bin auf
EnumWindows
EnumChildWindows
gestossen.
Dazu habe ich einige Stunden Infos gesammelt und mehrere Ansätze probiert, ich bekomm es aber einfach nicht zum Laufen.
Ich finde mein "Hauptfenster" und das(?) richtige Handle dazu, danach scheitere ich aber am Zugriff auf das Kind-Fenster.
Wie bau ich das in die vorhandene Routine ein ?
Vielen Dank im voraus für Eure Hilfe.
MfG...Mabbi
Dieser Beitrag wurde bereits 4 mal editiert, zuletzt von „Mabbi“ ()