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

BCB : Muka i nevolja

[es] :: C/C++ programiranje :: BCB : Muka i nevolja

[ Pregleda: 1176 | Odgovora: 1 ] > FB > Twit

Postavi temu Odgovori

Autor

Pretraga teme: Traži
Markiranje Štampanje RSS

Sisko.Marcetic
Skobalj

Član broj: 153060
Poruke: 31
212.200.175.*



Profil

icon BCB : Muka i nevolja15.11.2007. u 13:48 - pre 200 meseci
Molim ljude dobre volje koji imaju iskustva sa ovakvim stvarima za POMOC.

Radim na projektu vec 3 godine.
Radi se o slozenom projektu koji koristi dosta stare i glomazne
dbf fajlove. Tu su i razni dll fajlovi, te nisam zaista mogao da uploadujem sours.
Prethodna verzija programa bila je stabila, ali avaj nisam napravio backup.
Nesto sam doado u novu verziju. Program radi, ali kada zavrsi sa radom i
zatvorim glavni prozor pojavi se greska:

"Raised exception class EAccessViolation with message Access violation at address 00506067
Read of address 0000000. Process stoped ... bla bla "

OK

OK (sta cu)

onda mi selektuje red u datoteci Forms.hpp
i to

/*TCustomForm */ inline __fastcall virtual ~TForm(void) {}

Nakon toga resetujem program iz BCB a .

/*

Predpostavljam da se neko obraca mrtvom pointeru ili nezivoj mem. lokaciji
u hipu. Pregledao sam FormClose, FormDestroy u svim formama projekta sve je cisto
nema komunikacije sa nikakvim pointerima. Posumjao sam da je kriva komponenta
TPerinaForma public TForm, te sam i nju izbacio iz projekta ( mozda Pera nije
lepo deklarisao sve clanove i funkicije svoje forme pa sam sve to ukinuo)
i opet nista ... Tuzan je zivot moj:{


*/


 
Odgovor na temu

itf
Zagreb

Član broj: 59794
Poruke: 993
161.53.237.*



+9 Profil

icon Re: BCB : Muka i nevolja15.11.2007. u 14:47 - pre 200 meseci
Uglavnom, pokušavaš pristupiti nečemu što ne postoji. Što je to? E... to moraš ti provjeriti ;)

Najvjerovatnije i jest problematičan pristup nekom objektu preko pokazivača ili sl. Pogotovo ako koristiš dll-ove provjeri da li se neke dll funkcije pozivaju pri događajima FormClose, destroy itd. U ovom slučaju ili je riječ o pristupu nepostojećem (nealociranom ili već dealociranom) objektu, ili dll funkciji ukoliko koristiš runtime linking pa sukladno tome inicijaliziraš pokazivače na funkcije....

Polako počni izolirati problem. Prvo pogledaj što se točno sve izvršava kada se program završava a pri tome provjeravaj i "postojanost" objekta itd..
 
Odgovor na temu

[es] :: C/C++ programiranje :: BCB : Muka i nevolja

[ Pregleda: 1176 | Odgovora: 1 ] > FB > Twit

Postavi temu Odgovori

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