Text an ein HTML-Control senden (Browser)
-
Hallo Community!
Ich hab mir ein kleines Programm "zusammengesucht".
Es macht eigentlich nichts weiter als nach 5 Sekunden einen vordefinierten Text an das Fenster, welches den Fokus hat, sendet.
Mit Notepad funktioniert das ganze wunderbar. Nur hab ich das mit dem Hintergedanken geschrieben - um auf einer Testseite (Browser: Firefox) ein Inputfeld auszufüllen.Das Inputfeld auf einer Webseite ist ja kein 'Fenster' mit Handle - ich versteh aus dem Grund nicht wohin ich denn meine Message schicken soll...
Hier mal mein etwas 'trauriger' Versuch - aber Funktioniert
void CTestDlg::OnBnClickedButton1() { ::Sleep(5000); CPoint p; GetCursorPos(&p); HWND hwnd = ::WindowFromPoint(p); int length = (int)::SendMessage(hwnd, WM_GETTEXTLENGTH, 0, 0); length++; char* prevText = new char[length + 500]; ::SendMessage(hwnd, WM_GETTEXT, (WPARAM)(length), (LPARAM)prevText); strcat(prevText, "TEXT"); ::SendMessage(hwnd, WM_SETTEXT,0,(LPARAM)prevText); }Jemand eine Idee wie ich das umstricken kann, damit ich auch in ein HTML-Control Text kopieren, wenn sich der Cursor im Inputfeld befindet.
Ich hab auch schon google konsultiert - dass ist das, was ich mit google 'zusammen' hinbekommen habe.
MfG rico
-
Das senden des Textes ist nicht Dein Problem. Dein Problem ist das Finden des korrekten Handles, und das auch im korrkten Kontext der HTML Seite.
Ich wüsste dafür keine Lösung.Was willst Du machen?