Avatar billede wisen Nybegynder
10. juli 2001 - 15:53 Der er 3 kommentarer og
1 løsning

[VC++ @ Win2000] Heap block modified after it was freed

Så er der problemer... Jeg sidder og skal få et større system til at køre på Win2000. Jeg får en del af følgende \"fejl\" i debug :

HEAP[xxxxxxx.exe]: HEAP: Free Heap block 307d248 modified at 307d2d0 after it was freed

Jeg har tracet det til at være en \"fejl\" i funktionen free() i NTDLL.dll som er Win2000\'s memory allokator, så der kan jeg ikke så godt rette.

Er der nogen der kender en eller anden workaround.
Avatar billede jpk Nybegynder
10. juli 2001 - 16:43 #1
Mon ikke det er en fejl i programmet og ikke i NTDLL.dll?
Det tyder jo på, at noget memory bliver tilgået efter det er slettet...
Avatar billede wisen Nybegynder
11. juli 2001 - 08:27 #2
Jo, problemet ligger i, at VC++\'s debugger initialiserer heapen med en gylden værdi når man frigiver et eller andet; det gør den bla. for at checke for memoryleaks, overskrivninger osv.

Systemet virker \"fejlfrit\" på Win98 og WinNT4.0, det er altså en fejl der er blevet introduceret i forbindelse med, at det skal køre på Win2000. Koden er pt. den samme for alle platforme.
Avatar billede wisen Nybegynder
16. juli 2001 - 13:52 #3
Hmm, ikke meget hjælp at hente her :(
Avatar billede wisen Nybegynder
24. juli 2001 - 08:22 #4
Lukker spg; Det er vist ikke umiddelbart nogen hjælp at hente :(

...Prøver andetsteds...
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester