Ich versuche, ein Excel-Dokument zu erstellen, dass die Kommunikation mit einer unserer externen Anwendungen.VBA enumerieren durch Verwendung von enumchildwindows
Ich habe Sendmessage die gut arbeiten, um WM_GETTEXT von einem bestimmten Fenster, aber ich nicht auf die nächste Child bekommen können als die Klassennamen alle sind die gleichen:
Mein erster Code Greifern der Text von der ersten Klasse unter dem Parent Namen „WindowsForms10.EDIT.app.0.2004eee“
Grange = FindWindow(vbNullString, "General Account Enquiry")
Account_number = FindWindowEx(Grange, 0&, "WindowsForms10.EDIT.app.0.2004eee", vbNullString)
the_count = SendMessage(Account_number, WM_GETTEXTLENGTH, 0&, 0&)
Buffer$ = Space$(the_count)
Call SendMessageByString(Account_number, WM_GETTEXT, the_count + 1, Buffer$)
Aber ich muss auch den Text aus dem eingekreisten roten Kasten packen, die die gleiche Klasse Namen hat. Ich habe nur Erfahrung mit API-Aufrufen, wo die Klassennamen eindeutig sind.
Ich wurde von einem sehr hilfreichen stackoverflow-Mitwirkenden informiert, enumchildwindows zu verwenden, um durch die 5 anderen Kindfenster mit dem gleichen Namen zu fahren, aber nach ein paar Tagen Suche konnte ich den richtigen Code nicht finden Dies.
Kann jemand helfen oder einen Beispielcode zur Verfügung stellen, mit dem ich arbeiten kann?
Vielen Dank
Figur es geschaffen wäre hilfreich, wenn Sie die Deklarationen Ihrer API-Funktionen enthalten. – WizzleWuzzle