-
Path: news-archive.icm.edu.pl!agh.edu.pl!news.agh.edu.pl!newsfeed2.atman.pl!newsfeed.
atman.pl!.POSTED!not-for-mail
From: Przemysłąw Dębski <p...@g...pl>
Newsgroups: pl.comp.programming
Subject: Re: Okienko chatu - przechwytywanie tekstu
Date: Fri, 14 Jun 2013 07:35:26 +0200
Organization: ATMAN - ATM S.A.
Lines: 58
Message-ID: <kpea2d$2mf$1@node1.news.atman.pl>
References: <kpdekb$8sn$1@node1.news.atman.pl> <kpdihv$8hu$1@mx1.internetia.pl>
NNTP-Posting-Host: 5.134.64.84
Mime-Version: 1.0
Content-Type: text/plain; charset=ISO-8859-2; format=flowed
Content-Transfer-Encoding: 8bit
X-Trace: node1.news.atman.pl 1371188109 2767 5.134.64.84 (14 Jun 2013 05:35:09 GMT)
X-Complaints-To: u...@a...pl
NNTP-Posting-Date: Fri, 14 Jun 2013 05:35:09 +0000 (UTC)
User-Agent: Thunderbird 2.0.0.24 (Windows/20100228)
In-Reply-To: <kpdihv$8hu$1@mx1.internetia.pl>
Xref: news-archive.icm.edu.pl pl.comp.programming:203745
[ ukryj 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
Następne wpisy z tego wątku
- 14.06.13 07:59 firr kenobi
- 14.06.13 10:47 kali
- 14.06.13 11:35 Przemysław Dębski
- 14.06.13 12:30 kali
- 16.06.13 20:34 Ghost
- 17.06.13 20:37 Bogusław Szczepanowski
Najnowsze wątki z tej grupy
- Arch. Prog. Nieuprzywilejowanych w pełnej wer. na nowej s. WWW energokod.pl
- 7. Raport Totaliztyczny: Sprawa Qt Group wer. 424
- TCL - problem z escape ostatniego \ w nawiasach {}
- Nauka i Praca Programisty C++ w III Rzeczy (pospolitej)
- testy-wyd-sort - Podsumowanie
- Tworzenie Programów Nieuprzywilejowanych Opartych Na Wtyczkach
- Do czego nadaje się QDockWidget z bibl. Qt?
- Bibl. Qt jest sztucznie ograniczona - jest nieprzydatna do celów komercyjnych
- Co sciaga kretynow
- AEiC 2024 - Ada-Europe conference - Deadlines Approaching
- Jakie są dobre zasady programowania programów opartych na wtyczkach?
- sprawdzanie słów kluczowych dot. zła
- Re: W czym sie teraz pisze programy??
- Re: (PDF) Surgical Pathology of Non-neoplastic Gastrointestinal Diseases by Lizhi Zhang
- CfC 28th Ada-Europe Int. Conf. Reliable Software Technologies
Najnowsze wątki
- 2025-01-02 Warszawa => Software Engineer .Net <=
- 2025-01-02 Warszawa => Spedytor międzynarodowy <=
- 2025-01-02 Wróblewo => Analityk finansowy <=
- 2025-01-02 Szczecin => Senior Field Sales (system ERP) <=
- 2025-01-02 Ostrów Wielkopolski => Area Sales Manager OZE <=
- 2025-01-02 Bydgoszcz => Specjalista ds. Sprzedaży (transport drogowy) <=
- 2025-01-01 Już nie płoną
- 2025-01-01 Digikey, SN74CBT3253CD, FST3253, ktoś ma?
- 2025-01-01 Co tam u Was
- 2025-01-01 Koder szuka pracy. Koduję w j.: Asembler, C, C++ (z bibl. Qt) i D.
- 2025-01-01 Gdańsk => Delphi Programmer <=
- 2025-01-01 Łódź => Programista Full Stack .Net <=
- 2025-01-01 Żerniki => Regionalny Kierownik Sprzedaży (OZE) <=
- 2025-01-01 Wrocław => Specjalista ds. Sprzedaży <=
- 2024-12-31 Warszawa => Spedytor Międzynarodowy <=