Beste mensen,
Via (Excel) VBA probeer ik een applicatiescherm uit te lezen om zo uiteindelijk bepaalde data naar een aantal invoervelden weg te kunnen schrijven.
Dit doe ik door middel van de functies FindWindow en FindWindowEx.
Via het programma Spy++ zie ik dat het applicatiescherm de volgende indeling heeft:
Het lukt mij om de applicatie te laten vinden met de functie FindWindow (hwindow1 geeft waarde > 0 terug), door middel van de volgende code:
Uiteindelijk wil ik een textbox "TEdit" vinden en gaan vullen.
Voor zover ik heb kunnen vinden, moet ik dan eerst via FindWindowEx de onderdelen "TPanel", "TGroupBox" (documentgegevens) zien te vinden.
Op zich heb ik geen probleem om "TPanel" te vinden, maar ligt het probleem bij het vinden van de juiste "TGroupBox", want die komt meerdere keren voor op "TPanel".
Met de onderstaande code kan ik alleen de 1e "TGroupBox" vinden:
Ik moet echter de "TGroupBox" hebben waar een 2 achter staat in het bijgesloten plaatje.
Tot nu heeft mijn zoektocht op internet niks opgeleverd. Weet iemand hier hoe ik een volgende "TGroupBox" kan benaderen via functie FindWindowEx?
Via (Excel) VBA probeer ik een applicatiescherm uit te lezen om zo uiteindelijk bepaalde data naar een aantal invoervelden weg te kunnen schrijven.
Dit doe ik door middel van de functies FindWindow en FindWindowEx.
Via het programma Spy++ zie ik dat het applicatiescherm de volgende indeling heeft:
Het lukt mij om de applicatie te laten vinden met de functie FindWindow (hwindow1 geeft waarde > 0 terug), door middel van de volgende code:
Code:
hwindow1 = FindWindow(vbNullString, "Easy Medea 6.8.1.0")
Uiteindelijk wil ik een textbox "TEdit" vinden en gaan vullen.
Voor zover ik heb kunnen vinden, moet ik dan eerst via FindWindowEx de onderdelen "TPanel", "TGroupBox" (documentgegevens) zien te vinden.
Op zich heb ik geen probleem om "TPanel" te vinden, maar ligt het probleem bij het vinden van de juiste "TGroupBox", want die komt meerdere keren voor op "TPanel".
Met de onderstaande code kan ik alleen de 1e "TGroupBox" vinden:
Code:
view1 = FindWindowEx(hwindow1, 0&, "TPanel", vbNullString)
view2 = FindWindowEx(view1, 0&, "TGroupBox", vbNullString)
Ik moet echter de "TGroupBox" hebben waar een 2 achter staat in het bijgesloten plaatje.
Tot nu heeft mijn zoektocht op internet niks opgeleverd. Weet iemand hier hoe ik een volgende "TGroupBox" kan benaderen via functie FindWindowEx?