๐Ÿš€ go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Article View: be.comp.programming
Article #5599

Re: Debugger Visual C++

#5599
From: Roel Schroeven
Date: Wed, 12 Mar 2003 14:13
83 lines
4224 bytes
Christophe wrote:
> "Roel Schroeven" <ed5wcylnn2001@sneakemail.com> schreef in bericht
> news:HpGba.8510$Vq.840@afrodite.telenet-ops.be...
> 
>>Christophe wrote:
>>
>>>Hallo,
>>>
>>>ik maak een chatprogramma voor seri๏ฟฝle kabel.
>>>Alles compileert mooi, geen fouten, maar als ik data stuur, en dan de
>>>functie readDAta() open (tijdens een
>>>aparte thread), dan komt er een "assert error" van microsoft; je kan dan
>>>kiezen voor opnieuw negeren en annuleren.
>>>Als ik dus op negeren klik, dan werkt dat programma perfect, hij zet dus
> 
> de
> 
>>>ontvangen data mooi in de EditBox. Mijn vraag is nu;
>>>
>>>hoe zet je die foutopsporing af? Want het is storend, zonder dat , werkt
>>>mijn progr wel.
>>
>>Een Release build doen ipv Debug zal waarschijnlijk die assert
>>verwijderen, maar ik raad je aan het probleem bij de bron aan te pakken
>>en de bug die meer dan waarschijnlijk in je programma zit eruit te halen.
>>
>>--
>>"Codito ergo sum"
>>Roel Schroeven
>>
> 
> 
> OK, ik probeer het...
> Maar het probleem bij de bron aanpakken?? Als alles perfect compileert, hoe
> kan ik die fout er dan gaan uithalen?

Als alles perfect compileert, wil dat nog niet zeggen dat er geen fout 
inzit. Kijk maar:

#include <stdlib.h>
int main(int argc, char *argv[])
{
   int a;
   int *p = NULL;
   if (argc <= 1)
     return 0;
   if ((a = atoi(argv[1])) != 42)
     p = &a;
   return *p;
}

Dat zal perfect compileren (als ik geen domme fout gemaakt heb) en in de 
  meeste gevallen ook perfect uitgevoerd worden, behalve als je 
toevallig eens 42 meegeeft als parameter. Dan zal je een access 
violation of een segmentation fault krijgen. 't Is natuurlijk een dom 
voorbeeld, maar zulke dingen gebeuren in de praktijk echt wel.

> Het is bij het aanroepen van een functie dat hij de mist ingaat, of anders
> tijdens het uitvoeren van de thread.

Ik vermoed dat je toch ergens iets verkeerd doet, maar ik kan zo 
natuurlijk niet zeggen wat. Anders is er een fout in de compiler en/of 
de libraries, maar die kans is zeer klein. Een assert error mag 
eigenlijk niet gebeuren; als dat toch gebeurt is dat om de programmeur 
te waarschuwen dat er ergens toch iets fout zit.

> En, ik gebruik MSVC++ 6.0 ; waar kan ik een release build doen? Ik zie het
> precies nergens staan?

Hm, ik heb hier geen MSVC++ staan dus ik kan het niet nakijken. De 
MSDN-library zegt:
"To generate a release build of your program
1. Select Win32 Release from the Select Active Configuration drop-down 
list on the Build toolbar.
2. On the Build menu, click Build project.exe."
Maar dat gaat ervan uit dat je de Build toolbar hebt aanstaan. Indien 
niet kan je die aanzetten via (denk ik) Extra->Customize.
Het moet ergens via het menu kunnen, maar ik weet niet van buiten waar 
juist. Build->Choose profile of zoiets??

-- 
"Codito ergo sum"
Roel Schroeven
Technical Details
Message-ID: <zgHba.8560$Vq.705@afrodite.telenet-ops.be>
Path: arc1-ca.pugleaf.net!archiver1.google.com!news1.google.com!sn-xit-02!sn-xit-04!sn-xit-06!sn-xit-08!supernews.com!news.tele.dk!news.tele.dk!small.news.tele.dk!news.mailgate.org!skynet.be!skynet.be!ossa.telenet-ops.be!afrodite.telenet-ops.be.POSTED!not-for-mail
References: <JbGba.8496$Vq.687@afrodite.telenet-ops.be> <HpGba.8510$Vq.840@afrodite.telenet-ops.be> <tXGba.8544$Vq.382@afrodite.telenet-ops.be>

Show Full Headers
Complete Article Headers
X-Google-Language: DUTCH,ASCII
X-Google-Thread: fcea4,295e341629919ff3
X-Google-Attributes: gidfcea4,public
X-Google-ArrivalTime: 2003-03-12 06:13:54 PST
Path: arc1-ca.pugleaf.net!archiver1.google.com!news1.google.com!sn-xit-02!sn-xit-04!sn-xit-06!sn-xit-08!supernews.com!news.tele.dk!news.tele.dk!small.news.tele.dk!news.mailgate.org!skynet.be!skynet.be!ossa.telenet-ops.be!afrodite.telenet-ops.be.POSTED!not-for-mail
From: Roel Schroeven <ed5wcylnn2001@sneakemail.com>
User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.0; en-US; rv:1.3b) Gecko/20030210
X-Accept-Language: en-us, en
MIME-Version: 1.0
Newsgroups: be.comp.programming
Subject: Re: Debugger Visual C++
References: <JbGba.8496$Vq.687@afrodite.telenet-ops.be> <HpGba.8510$Vq.840@afrodite.telenet-ops.be> <tXGba.8544$Vq.382@afrodite.telenet-ops.be>
In-Reply-To: <tXGba.8544$Vq.382@afrodite.telenet-ops.be>
Content-Type: text/plain; charset=ISO-8859-1; format=flowed
Content-Transfer-Encoding: 8bit
Lines: 84
Message-ID: <zgHba.8560$Vq.705@afrodite.telenet-ops.be>
Date: Wed, 12 Mar 2003 14:13:51 GMT
NNTP-Posting-Host: 213.224.37.125
X-Complaints-To: abuse@telenet.be
X-Trace: afrodite.telenet-ops.be 1047478431 213.224.37.125 (Wed, 12 Mar 2003 15:13:51 MET)
NNTP-Posting-Date: Wed, 12 Mar 2003 15:13:51 MET
Organization: Telenet Internet