Delphi tudják utolsó sorban a kódot, ahol a kivétel történt verem túlcsordulás

Bizonyos esetekben, ha hiba történik közben a hibakeresés, fordító mutatja vonal delfovyh könyvtárak pontosan ahol a kivétel bekövetkezett. Például kezelésére egy nem létező indexet tömbök és más tartályok, mint ez:

Azt, hogy irányokat szöveg: Error (@SListIndexError, index); a System.Classes

A nagy többszálas projektek fogni az ilyen hibák felderítésével rendkívül nehéz felvenni a napló minden sor után - szintén nem lehetséges. És szeretném tudni, hogy a sorban a projekt, ahol minden elkezdődött. Hogy mást kiderülhet a keresési karaktersorozatot hibakeresés módban?

beállított március 28. 21:02

Ahhoz, hogy megtudja, hol a hiba jött, meg kell nézni a hívási verem (aka Hívás Stack). Debug módban az IDE a verem mindig rendelkezésre áll, és „az utolsó sorban a kód” határozza meg az elemi. Sőt, abban az időben a kizárás egy többszálú alkalmazást, megtekintheti adott helyen az egyik patakok és hogyan került erre a helyre. Ha érdekli a kérdés, szerzés a verem nem a debugger. és miután kéznél csak a lefordított exe. Itt jön a támogatási eszközök (EurekaLog, MadExcept stb) a fent leírt. - zed március 29 at 06:30

@HeathRow természetesen üres, akkor elkezd „dolgozni”, ha az alkalmazás leáll egy bizonyos ponton. Mivel a kérelem benyújtása előtt szüneteltetéséhez pont a hibakereső ablakban nincs jelen - párhuzamosan fut több szálon, amelyek mindegyike aktív CallStack. Callstack maga fogja mutatni a sorrend az aktuális szál hívások eredményeként töréspont, F4, kivétel történik. Váltás a patakok minden verem kijelző - a téma állapota ablak - kami a március 29 9:00