Hallo,
von meinem Programm aus muss die Suchfunktion eines externen Programmes gesteuert werden. Ich gehe so vor:
1) Ich durchsuche zunächst die Fenstertitel, um zu prüfen, ob das externe Programm überhaupt geöffnet ist
2) Ist es geöffnet, hole ich es in der Vordergrund
Code:
SendMessage(iHandle, WM_SYSCOMMAND, SC_RESTORE, iHandle);
SetForegroundWindow(iHandle);
3) Danach kommen ein paar simulierte Tastendrückereien...F3, TAB, TAB, STRG-V, ENTER
Klappt alles wunderbar, wenn das Programm in den Vordergrund geholt werden kann.
Nun das Problem: in diesem Programm können Unterformulare geöffnet werden, die immer im Vordergrund bleiben, sobald das Programm aktiviert wird. In diesem Falle würden meine simulierten Tastenkombinationen zu unschönen Ergebnissen führen.
Also müsste ich irgendwie prüfen, ob wirklich das "Hauptfenster" des Programmes den Fokus hat, oder ein unerwünschtes Unterformular.
Geht das? Ich könnte natürlich eine Negativliste der unerwünschten Fenstertitel führen, aber das wäre doch sehr umständlich und aufwändig.
Grüße
Christof