Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.

VC exception handling

[es] :: C/C++ programiranje :: VC exception handling

[ Pregleda: 3869 | Odgovora: 4 ] > FB > Twit

Postavi temu Odgovori

Autor

Pretraga teme: Traži
Markiranje Štampanje RSS

Dragi Tata
Malo ispod Kanade

Član broj: 1958
Poruke: 3906
199.171.112.*



+6 Profil

icon VC exception handling30.04.2002. u 21:28 - pre 268 meseci
Evo link na jedan jako dobar članak o tome kako Visual C++ radi sa "izuzecima" ispod haube.

Članak nije za početnike.

http://www.codeproject.com/cpp/Exceptionhandler.asp
 
Odgovor na temu

leka
Dejan Lekić
senior software engineer, 3Developers
Ltd.
London, UK

Član broj: 234
Poruke: 2534
*.telia.com

Sajt: dejan.lekic.org


+2 Profil

icon Re: VC exception handling30.04.2002. u 23:17 - pre 268 meseci
Interesantan tekst mister Nemanja! :) Ovo donekle objašnjava zašto se neke zavrzlame sa izuzecima ponašaju na jednoj strani ovako, a na drugoj onako (kompajlirano različitim kompajlerima)...
Dejan Lekic
software engineer, MySQL/PgSQL DBA, sysadmin
 
Odgovor na temu

SEH

Član broj: 2215
Poruke: 94
*.net.hinet.hr



Profil

icon Re: VC exception handling01.05.2002. u 11:33 - pre 268 meseci
Eto, sad i vi znate sto moj nick znaci. SEH = Structured Exception Handling. U asmu se inace rabi samo jednostavnija verzija SEH-a, obicno preko makroa. Ako niste znali, SEH je jedna od jednostavnijih anti-debugging metoda. Npr, instalirajte svoj exception handler, nakon toga napravite neke instrukcije koje generiraju exception, npr:
xor eax, eax
div eax
sto je dijeljenje sa nulom, ili
xor edi, edi
stosd
sto je pisanje na nedozvoljenu memorijsku lokaciju. Nakon exceptiona, tok programa ce se preusmjeriti na vas exception handler (koji je top-level, ako ste ga instalirali rucno, a ne preko try...catch). Ako u nekom debuggeru budete traceali takav kod, on ce uredno prijaviti poruku o "unhandled exception" (sto radi recimo w32dasm), ili ce jednostvno prekinuti tracing (TRW2000 npr.) Ovo se moze izbjeci postavljanjem breakpointa na exception handler i pustiti program da sam ide bez da ga mi traceamo.
 
Odgovor na temu

leka
Dejan Lekić
senior software engineer, 3Developers
Ltd.
London, UK

Član broj: 234
Poruke: 2534
*.telia.com

Sajt: dejan.lekic.org


+2 Profil

icon Re: VC exception handling01.05.2002. u 21:32 - pre 268 meseci
Ma sve je to kul, ali kome trebaju anti-debuging metode? Obično mi treba nešto što će mi pomoći da PRONAĐEM greške, a ne da mi odmogne u tome... Ne verujem da postoji neki veliki broj slučajeva gde tako nešto nekom treba...
Ili sam te pogrešno razumeo?
Dejan Lekic
software engineer, MySQL/PgSQL DBA, sysadmin
 
Odgovor na temu

SEH

Član broj: 2215
Poruke: 94
*.net.hinet.hr



Profil

icon Re: VC exception handling02.05.2002. u 00:42 - pre 268 meseci
Citat:
leka:
Ma sve je to kul, ali kome trebaju anti-debuging metode?


Ti ne pravis shareware programe? Don't worry, mnogi jesu :))

Citat:
[
Obično mi treba nešto što će mi pomoći da PRONAĐEM greške, a ne da mi odmogne u tome... Ne verujem da postoji neki veliki broj slučajeva gde tako nešto nekom treba...
Ili sam te pogrešno razumeo?


Ovo je da lamest anti-debuging trik. Obilno se rabi u win32 virusima, EXE protectorima/crypterima i slicno. I ako znas princip rada SEH-a, tada si faca :)
 
Odgovor na temu

[es] :: C/C++ programiranje :: VC exception handling

[ Pregleda: 3869 | Odgovora: 4 ] > FB > Twit

Postavi temu Odgovori

Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.