Przejęcia pola Edit przeglądarki

Przejęcia pola Edit przeglądarki
0

Witam.
mam uchwyt okna przeglądarki lub innej aplikacji. Jak przejąć kontrolę nad którymś z pól edycyjnych umieszczonych na formie.

Help

Patryk27
@Furious: Jak przejąć kontrolę nad którymś z pól edycyjnych umieszczonych na formie
flowCRANE
To nie jest pytanie bo nie ma znaku pytajnika ;P
Patryk27
A Twój pierwszy komentarz nie jest zdaniem twierdzącym, bo nie ma na końcu kropki :P
0

.... może by ktoś rzeczowo odpowiedział na zadany problem ?? :)
Konkretnie chodzi o to jak wpisać w pole edycyjne jakiś tekst ?

reinman
  • Rejestracja:około 20 lat
  • Ostatnio:3 minuty
  • Postów:74
0

FindWindowEx oraz SendMessage. Dość rzeczowo ? ;)

olesio
  • Rejestracja:około 17 lat
  • Ostatnio:około 3 lata
  • Lokalizacja:Szczecin
  • Postów:4191
0

Co rozumiesz przez "przejąć kontrolę"? Bo jeżeli to, co ja myślę, czyli "podczepienie" się pod funkcję obsługi komunikatów obcego okna lub kontrolki - to można dokonać tego tylko funkcją SetWindowLong i GWL_WNDPROC jako drugi parametr. Więcej wyjaśnione jest na MSDNie. Z tym, że należy pamiętać iż takie podczepienie jest możłiwe tylko dla kontrolek działających w tym samym procesie. Także pozostaje albo injekcja dllki w ten program. I ona tego dokona (do rymu nawet ;)). Ewentualnie jeżeli program używa jakiejś dllki systemowej z małą ilością exportów lub na przykład ddraw.dll, to napisać mały wrapper, który wykorzysta tę własnośc, że dllki o systemowe są na ogół ładowane statycznie lub dynamicznie najpierw z katalogu programu, a dopiero później z systemowego. I wtedy będzie można bezkarnie ingerować w kontrolki danego procesu. Metody prób dostępu bezpośredniego mogą być słusznie zgłoszone przez niektóre antywisursy jako działanie szkodliwego orogramowania. Co do injekcji, to do procesu 32 bitowego pod Delphi 7 świetnie nadaje się moduł afxcodehook.pas. Więcej informacji na podane przeze mnie rozwiązania z pewnością da się wygooglować, trzeba tylko samodzielnie to zrobić.


Pozdrawiam.
Azarien
  • Rejestracja:ponad 21 lat
  • Ostatnio:około 2 godziny
1

dzisiejsze przeglądarki nie tworzą formularzy z natywnych kontrolek systemu operacyjnego, więc będzie problem.

edytowany 1x, ostatnio: Azarien
0

który wykorzysta tę własność, że dllki o systemowe są na ogół ładowane statycznie lub dynamicznie najpierw z katalogu programu, a dopiero później z systemowego. I wtedy będzie można bezkarnie ingerować w kontrolki danego procesu.

.... czy mógłbyś mi coś więcej w tym zagadnieniu opisać

olesio
  • Rejestracja:około 17 lat
  • Ostatnio:około 3 lata
  • Lokalizacja:Szczecin
  • Postów:4191
0

A co tutaj więcej pisać. Tworzysz dllke i eksportujesz pożądane funkcje tak aby zwracały to co wykonuje oryginalna dllka. Zaląażek tego masz pokazany w moim postcie pod tym linkiem http://4programmers.net/Forum/Delphi_Pascal/219385-aplikacja_wielowatkowa_z_dostepem_do_bazy?p=961069#id961069 z tym że autorzy emulatora, z którym tak kombinowałem poprawili w nim co trzeba w najnowszej becie. I w związku z tym takie kombinowanie jest zbędne. Do kodu źródłowego teraz dostępu nie mam, ale wystarczy wygooglować za kodem dllki dla Worms Armagedon, będącej takim wrapperem. Jest pisana w Delphi. Chociaż fakt, że wstrzymuje działanie explorera jest nieco lamerskie, ale często dość skuteczne.


Pozdrawiam.

Zarejestruj się i dołącz do największej społeczności programistów w Polsce.

Otrzymaj wsparcie, dziel się wiedzą i rozwijaj swoje umiejętności z najlepszymi.