albrecht Opublikowano 15 Czerwca 2004 Zgłoś Opublikowano 15 Czerwca 2004 Zna ktoś może sposób, bądź linki gdzie o tym pisza :) jak najbezpieczniej i najlatwiej dostac sie do informacji o procesie z poziomu danego procesu. Chce pozyskać informacje co ostatnio wykonal proces ( instrukcje , funkcje itp). Potrzebuje to podczas gdy proces powoduje wykonanie np. naruszenia ochrony pamieci i zanim zostanie zabity proces wypisal takie info :) Cytuj Udostępnij tę odpowiedź Odnośnik do odpowiedzi Udostępnij na innych stronach Więcej opcji udostępniania...
SiNuS_ Opublikowano 16 Czerwca 2004 Zgłoś Opublikowano 16 Czerwca 2004 Zna ktoś może sposób, bądź linki gdzie o tym pisza :) jak najbezpieczniej i najlatwiej dostac sie do informacji o procesie z poziomu danego procesu. Chce pozyskać informacje co ostatnio wykonal proces ( instrukcje , funkcje itp). Potrzebuje to podczas gdy proces powoduje wykonanie np. naruszenia ochrony pamieci i zanim zostanie zabity proces wypisal takie info :) Co ma oznaczać w ogóle to "z poziomu danego procesu"? a to "najbezpieczniej"? 8) w każdym razie, może zainstaluj sobie jakiś debuger lepiej np. SoftIce... gdzieś na http://www.programowanie.host.sk/ albo po prostu napisz do autora aplikacji - tak będzie najłatwiej. Cytuj Udostępnij tę odpowiedź Odnośnik do odpowiedzi Udostępnij na innych stronach Więcej opcji udostępniania...
Megabyte Opublikowano 17 Czerwca 2004 Zgłoś Opublikowano 17 Czerwca 2004 Zna ktoś może sposób, bądź linki gdzie o tym pisza :) jak najbezpieczniej i najlatwiej dostac sie do informacji o procesie z poziomu danego procesu. Chce pozyskać informacje co ostatnio wykonal proces ( instrukcje , funkcje itp). Potrzebuje to podczas gdy proces powoduje wykonanie np. naruszenia ochrony pamieci i zanim zostanie zabity proces wypisal takie info :) Co ma oznaczać w ogóle to "z poziomu danego procesu"? a to "najbezpieczniej"? 8) w każdym razie, może zainstaluj sobie jakiś debuger lepiej np. SoftIce... gdzieś na http://www.programowanie.host.sk/ albo po prostu napisz do autora aplikacji - tak będzie najłatwiej. Myśle że jemu chodzi o to że pisze program i chce aby ten progs wiedział kiedy się wywali. Jeżeli np piszesz program pod C++ to możesz wykorzystać wyjątki, które generowane są przez program. Poźniej je wyłapujesz i wyświetlasz komunikat. W C++ Builderze podpinasz się pod metode onException obiektu Application i za każdym razem gdy będziesz miał błąd ochrony pamięci to najpierw zostanie wywołana metoda onException. Cytuj Udostępnij tę odpowiedź Odnośnik do odpowiedzi Udostępnij na innych stronach Więcej opcji udostępniania...
SiNuS_ Opublikowano 17 Czerwca 2004 Zgłoś Opublikowano 17 Czerwca 2004 Jeżeli np piszesz program pod C++ to możesz wykorzystać wyjątki, które generowane są przez program. Poźniej je wyłapujesz i wyświetlasz komunikat. W C++ Builderze podpinasz się pod metode onException obiektu Application i za każdym razem gdy będziesz miał błąd ochrony pamięci to najpierw zostanie wywołana metoda onException. Różne są "szkoły". ;) Osobiścię wolę używać tradycyjnych rozwiązań w postaci breakpointów, watchów i ewentualnie wykonywania programu krok po kroku. Nie trzeba pisać dodatkowego kodu - no chyba, że jest 3 w nocy, a program ma być na wczoraj 8) Cytuj Udostępnij tę odpowiedź Odnośnik do odpowiedzi Udostępnij na innych stronach Więcej opcji udostępniania...
Megabyte Opublikowano 17 Czerwca 2004 Zgłoś Opublikowano 17 Czerwca 2004 Różne są "szkoły". ;) Osobiścię wolę używać tradycyjnych rozwiązań w postaci breakpointów, watchów i ewentualnie wykonywania programu krok po kroku. Nie trzeba pisać dodatkowego kodu - no chyba, że jest 3 w nocy, a program ma być na wczoraj 8) Tu nie o to chodzi. Zauważ że jak IE się wywali to nie dostajesz komunikatu AccessViolation tylko wyskakuje ładne okienko z informacja że IE wykonał nieprawidłowa operacje i zostanie zamknięty i możesz wybrać zeby wysłał info o błędzie do M$. Myśle że albrecht chce właśnie coś takiego zrobić. Cytuj Udostępnij tę odpowiedź Odnośnik do odpowiedzi Udostępnij na innych stronach Więcej opcji udostępniania...
spicum Opublikowano 17 Czerwca 2004 Zgłoś Opublikowano 17 Czerwca 2004 Moze sam zainteresowany sie po prostu wypowie o co mu dokladnie chodzi :> Cytuj Udostępnij tę odpowiedź Odnośnik do odpowiedzi Udostępnij na innych stronach Więcej opcji udostępniania...
uluru Opublikowano 8 Lipca 2004 Zgłoś Opublikowano 8 Lipca 2004 Dwa zdania SiNuS_-a spowodowały że się zarejestrowałem aby móc dodać komentarz od siebie. SiNuS_ napisał: "(...) Osobiścię wolę używać tradycyjnych rozwiązań w postaci breakpointów, watchów i ewentualnie wykonywania programu krok po kroku. (...)". Gorąco polecam książkę "Debuger usuwanie błędów z programów" Johna Robbinsa (z przedmową Matta Pietreka), który jako m.in. współtwórca wymienionego przez Ciebie SoftIce-a jest dla mnie autorytetem. Autor wyraźnie podkreśla że debugger owszem jest fantastycznym narzędziem, ale warto poświęcić trochę czasu na to aby program może nie sam wskazał konkretną przyczynę błędu ale żeby przynajmniej jak najdokładniej opisał awarię (błąd). Przy czym ponieważ książkę napisał człowiek o ogromnym doświadczeniu, to nie tylko jest opisany problem ale jest przygotowane wygodne rozwiązanie (z dostarczeniem gotowych narzędzi włącznie), po to aby spędzić na szukaniu błędu jak najmniej czasu i w zasadzie w chwili wystąpienia znać powód i rozmyślać nad rozwiązaniem. Jednym z poruszanych zagadnień jest "jak uzyskać cenne informacje o stanie procesu" (co jest tematem tego wątka). SiNuS_ napisał: "(...) może zainstaluj sobie jakiś debuger lepiej np. SoftIce... (...)". Mówić o SoftIce "jakiś debuger" to ogromne nieporozumienie. Zakładam że umiesz się nim posługiwać i zdajesz sobie sprawę że jak bardzo jest to potężne narzędzie. Paru użytkowników SoftIce, których spotkałem używali go w sposób, który nieodparcie kojarzy mi się ze strzelaniem z armaty do wróbla. Cytuj Udostępnij tę odpowiedź Odnośnik do odpowiedzi Udostępnij na innych stronach Więcej opcji udostępniania...
SiNuS_ Opublikowano 8 Lipca 2004 Zgłoś Opublikowano 8 Lipca 2004 Dwa zdania SiNuS_-a spowodowały że się zarejestrowałem aby móc dodać komentarz od siebie. Miło 8) SiNuS_ napisał: "(...) Osobiścię wolę używać tradycyjnych rozwiązań w postaci breakpointów, watchów i ewentualnie wykonywania programu krok po kroku. (...)". Gorąco polecam książkę "Debuger usuwanie błędów z programów" Johna Robbinsa (z przedmową Matta Pietreka), Wielkie dzięki! Szybki sersz w uczelnianej bibliotece i już mam zamówiony jedyny egzemplarz 8) SiNuS_ napisał: "(...) może zainstaluj sobie jakiś debuger lepiej np. SoftIce... (...)". Mówić o SoftIce "jakiś debuger" to ogromne nieporozumienie. Zakładam że umiesz się nim posługiwać i zdajesz sobie sprawę że jak bardzo jest to potężne narzędzie. Paru użytkowników SoftIce, których spotkałem używali go w sposób, który nieodparcie kojarzy mi się ze strzelaniem z armaty do wróbla. No nie da się ukryć, że polecanie SoftIce'a tutaj przeze mnie było durne, tymbardziej, że autor wątku schował głowę w piasek... :] Cytuj Udostępnij tę odpowiedź Odnośnik do odpowiedzi Udostępnij na innych stronach Więcej opcji udostępniania...