eGospodarka.pl
eGospodarka.pl poleca

eGospodarka.plGrupypl.comp.programmingOkienko chatu - przechwytywanie tekstuRe: Okienko chatu - przechwytywanie tekstu
  • Data: 2013-06-14 07:35:26
    Temat: Re: Okienko chatu - przechwytywanie tekstu
    Od: Przemysłąw Dębski <p...@g...pl> szukaj wiadomości tego autora
    [ pokaż wszystkie nagłówki ]

    kali pisze:
    > Użytkownik "Przemysłąw Dębski" <p...@g...pl> napisał w wiadomości
    news:kpdekb$8sn$1@node1.news.atman.pl...
    >> Mam nadzieję, że ze swoim problemem trafiłem na dobrą grupę, wydała mi
    >> się najwłaściwsza.
    >> Jest sobie pewien program (Win32), którego elementem jest komponent
    >> chatu osadzony w jednym z okien. Mam potrzebę logować w czasie
    >> rzeczywistym teksty, które się tam (chat) pojawiają. Problemem jest to,
    >> że jest to całkowicie autorski komponent twórców tego oprogramowania i
    >> nie wiadomo jak on działa. Podglądałem go przy pomocy Spy++, jedyny
    >> komunikat pojawiający się przy pojawianiu się nowej linijki tekstu to
    >> WM_PAINT. Z kolei API Monitor twierdzi, że żadne WinAPI nie jest
    >> wywoływane z parametrem w postaci pojawiającego się tam tekstu (z
    >> tekstami pojawiającymi się poza komponentem chatu to i owszem). Ma ktoś
    >> może pomysł gdzie i jak szukać tropu? O samą technikę przechwytywania
    >> tego typu rzeczy (jak już wiadomo co i skąd) nie pytam, to już jako tako
    >> wujek google mi wyjaśnił.
    >
    > Czy napewno monitoruje całe API ?

    Za to ręki nie dam sobie uciąć ale raczej tak, wyłączyłem wszystkie
    filtry wywołań. Później ustawiłem filtr na api związane z GDI. W jednym
    i drugim przypadku odnajdywał teksty z wszystkiego co pojawiało się na
    okienkach programu z wyjątkiem problematycznego komponentu.

    > Ale jak by nie kombinował - włanczasz debugger
    > szukasz okna tego czatu - a własciwie jego
    > procedury obsługi komunikatów - ustawiasz się
    > z przerwaniem i patrzysz jak on ten komunikat
    > WM_PAINT obsługuje ?

    Ale to chyba jakiś dissasembler masz na myśli ? Mamy przecież do
    dyspozycji goły exe i nic ponad to. Dodatkowo nie mamy pewności, czy
    nasza funkcja nie siedzi w jakimś dll - choć ok. w tym konkretnym
    przypadku to mało prawdopodobne. Załóżmy że przełamię "barierę językową"
    ;) Jak w takim kodzie znaleźć assemblerowy odpowiednik ~"case WM_PAINT"
    skoro na tym poziomie komunikat będzie reprezentowany przez liczbę a nie
    przez nazwę. Dodatkowo takich ~"case WM_PAINT" będzie tyle ile
    komponentów w aplikacji (dobrze myślę?) i skąd wiadomo który z nich to
    jest właśnie ten. Jeśli by chcieć szukać interesującego nas fragmentu
    kodu poprzez jakiś charakterystyczny string, to też mamy problem. To
    jest komponent chatu i wyświetla to co ludzie napiszą. Exe wrzucony do
    dissasemblera nie jest (?) działającym programem.
    Może źle zrozumiałem "włączasz debuger" ?

    > Wtedy zobaczysz co (tekst) i skąd (bufor)
    > bierze.A nawet jak/jakim_api to pisze :))))))

    Do tego dążę :)

    > Wtedy podmieniasz na swoją procedurę
    > i przed paint robisz kopie do logu ?
    > :))))))))))

    Taki jest właśnie plan. Co prawda nigdy tego nie robiłem, ale w sieci
    pełno materiałów i przykładów jak to się robi, więc tu problemu nie
    powinno być :)

    Pozdrawiam

Podziel się

Poleć ten post znajomemu poleć

Wydrukuj ten post drukuj


Następne wpisy z tego wątku

Najnowsze wątki z tej grupy


Najnowsze wątki

Szukaj w grupach

Eksperci egospodarka.pl

1 1 1

Wpisz nazwę miasta, dla którego chcesz znaleźć jednostkę ZUS.

Wzory dokumentów

Bezpłatne wzory dokumentów i formularzy.
Wyszukaj i pobierz za darmo: