<?xml version="1.0" encoding="UTF-8"?><rss xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:atom="http://www.w3.org/2005/Atom" version="2.0"><channel><title><![CDATA[Unhandleld Exception trotz try catch]]></title><description><![CDATA[<p>Hallo C++ler</p>
<p>Ich arbeite momentan an einem Projekt in C++ native (ohne clr support) im VS2005.<br />
Durch fälschliche Initialisierung eines Pointers bekomm ich im Programm einen Pointer auf 0x0000f (oder so ähnlich).<br />
Auf den wird im Progrogramm zugegriffen was zu einer exception führt. Die exception ist: Unhandeld exception at..... Access violation reading location 0x.... und wird in einer externen dll (release) geworfen.<br />
Jedoch befindet sich alles in einem try {} catch(...){} block, aber trotzdem kann ich den code nicht weiter ausführen!<br />
Warum wird diese Exception nicht im catch behandelt?</p>
<p>MFG Speeedy</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/224160/unhandleld-exception-trotz-try-catch</link><generator>RSS for Node</generator><lastBuildDate>Fri, 02 Oct 2026 12:06:50 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/224160.rss" rel="self" type="application/rss+xml"/><pubDate>Mon, 06 Oct 2008 14:15:58 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to Unhandleld Exception trotz try catch on Mon, 06 Oct 2008 14:15:58 GMT]]></title><description><![CDATA[<p>Hallo C++ler</p>
<p>Ich arbeite momentan an einem Projekt in C++ native (ohne clr support) im VS2005.<br />
Durch fälschliche Initialisierung eines Pointers bekomm ich im Programm einen Pointer auf 0x0000f (oder so ähnlich).<br />
Auf den wird im Progrogramm zugegriffen was zu einer exception führt. Die exception ist: Unhandeld exception at..... Access violation reading location 0x.... und wird in einer externen dll (release) geworfen.<br />
Jedoch befindet sich alles in einem try {} catch(...){} block, aber trotzdem kann ich den code nicht weiter ausführen!<br />
Warum wird diese Exception nicht im catch behandelt?</p>
<p>MFG Speeedy</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1594240</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1594240</guid><dc:creator><![CDATA[Speeedy]]></dc:creator><pubDate>Mon, 06 Oct 2008 14:15:58 GMT</pubDate></item><item><title><![CDATA[Reply to Unhandleld Exception trotz try catch on Mon, 06 Oct 2008 14:42:32 GMT]]></title><description><![CDATA[<p>Weil null pointer für gewöhnlich nicht im catch abgefangen werden.</p>
<p>Das kann man höchstens mit einem Compiler-spezifischen try-catch abfangen. Aber das habe ich selber noch nie benötigt.</p>
<p>Lieber auf null abfragen, bevor man einen pointer benutzt oder einen gültigen Pointer übergeben.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1594270</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1594270</guid><dc:creator><![CDATA[Bulli]]></dc:creator><pubDate>Mon, 06 Oct 2008 14:42:32 GMT</pubDate></item><item><title><![CDATA[Reply to Unhandleld Exception trotz try catch on Mon, 06 Oct 2008 14:52:35 GMT]]></title><description><![CDATA[<p>Die NULL abfrage ist bereits drinn aber dadurch dass er nicht initialisiert wird zeigt er irgendwo hin ( in meinem fall auf die Speicheradresse 0x0..0f )</p>
<p>Gib es eine möglichkeit Pointer's zu validieren, um solche fehler zu erkennen?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1594279</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1594279</guid><dc:creator><![CDATA[Speeedy]]></dc:creator><pubDate>Mon, 06 Oct 2008 14:52:35 GMT</pubDate></item><item><title><![CDATA[Reply to Unhandleld Exception trotz try catch on Mon, 06 Oct 2008 15:43:15 GMT]]></title><description><![CDATA[<p>Speeedy schrieb:</p>
<blockquote>
<p>Die NULL abfrage ist bereits drinn aber dadurch dass er nicht initialisiert wird zeigt er irgendwo hin ( in meinem fall auf die Speicheradresse 0x0..0f )</p>
</blockquote>
<p>Hä? Dann setz ihn doch einfach auf null! Dann zeigt er nicht mehr &quot;irgendwo&quot; hin</p>
<p>Speeedy schrieb:</p>
<blockquote>
<p>Gib es eine möglichkeit Pointer's zu validieren, um solche fehler zu erkennen?</p>
</blockquote>
<p>Was meinst du mit &quot;validieren&quot;?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1594310</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1594310</guid><dc:creator><![CDATA[Bulli]]></dc:creator><pubDate>Mon, 06 Oct 2008 15:43:15 GMT</pubDate></item><item><title><![CDATA[Reply to Unhandleld Exception trotz try catch on Mon, 06 Oct 2008 15:51:06 GMT]]></title><description><![CDATA[<p>Speeedy schrieb:</p>
<blockquote>
<p>...aber dadurch dass er nicht initialisiert wird ...</p>
</blockquote>
<p>Herrje, wenn man schon rohe Zeiger verwendet, dann <em><strong>immer</strong></em> initialisieren!</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1594325</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1594325</guid><dc:creator><![CDATA[Badestrand]]></dc:creator><pubDate>Mon, 06 Oct 2008 15:51:06 GMT</pubDate></item><item><title><![CDATA[Reply to Unhandleld Exception trotz try catch on Mon, 06 Oct 2008 18:10:26 GMT]]></title><description><![CDATA[<p>Speeedy schrieb:</p>
<blockquote>
<p>Gib es eine möglichkeit Pointer's zu validieren, um solche fehler zu erkennen?</p>
</blockquote>
<p>Einfach auf <code>NULL</code> setzen, und man erkennt den ungültigen Zeiger.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1594411</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1594411</guid><dc:creator><![CDATA[Nexus]]></dc:creator><pubDate>Mon, 06 Oct 2008 18:10:26 GMT</pubDate></item><item><title><![CDATA[Reply to Unhandleld Exception trotz try catch on Fri, 10 Oct 2008 07:45:17 GMT]]></title><description><![CDATA[<p>Wir steigen momentan von VS6 auf VS8 (2005) um und erst im VS8 stellten wir dies fest. Im VS6 zeigten die Zeiger immer auf eine gewisse Addresse (Fragt mich nicht warum...!)<br />
Auf null setzen würd ich ja gerne aber da hätt ich wohl schon fast Monate um alles zu überprüfen und es kämen sicher immer wieder neue...<br />
Gibts nicht eine andere möglichkeit? (z.b. VS oder zusätzliche Software die das überprüft..?)</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1596687</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1596687</guid><dc:creator><![CDATA[Speeedy]]></dc:creator><pubDate>Fri, 10 Oct 2008 07:45:17 GMT</pubDate></item><item><title><![CDATA[Reply to Unhandleld Exception trotz try catch on Fri, 10 Oct 2008 07:50:21 GMT]]></title><description><![CDATA[<p>Speeedy schrieb:</p>
<blockquote>
<p>Wir steigen momentan von VS6 auf VS8 (2005) um und erst im VS8 stellten wir dies fest. Im VS6 zeigten die Zeiger immer auf eine gewisse Addresse (Fragt mich nicht warum...!)</p>
</blockquote>
<p>Weisst Dus nicht oder willsts Dus nicht sagen?<br />
Könnte sein, dass Du im Debugging Mode bist und desshalb alle Variabeln und Zeiger Initialisiert (bzw. gekennzeichnet mit einem spezial Pattern) sind.</p>
<p>Simon</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1596692</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1596692</guid><dc:creator><![CDATA[theta]]></dc:creator><pubDate>Fri, 10 Oct 2008 07:50:21 GMT</pubDate></item><item><title><![CDATA[Reply to Unhandleld Exception trotz try catch on Fri, 10 Oct 2008 08:02:21 GMT]]></title><description><![CDATA[<p>Mir wäre nichts bekannt. Wenns so wäre würde dies von VS oder einen externen komponenten kommen, was mich dann wiederum wundern würde warum das in der neuen version nicht mehr der fall wäre.<br />
Aber ich prüf dies sicher mal nach.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1596697</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1596697</guid><dc:creator><![CDATA[Speeedy]]></dc:creator><pubDate>Fri, 10 Oct 2008 08:02:21 GMT</pubDate></item><item><title><![CDATA[Reply to Unhandleld Exception trotz try catch on Fri, 10 Oct 2008 08:49:31 GMT]]></title><description><![CDATA[<p>Speeedy schrieb:</p>
<blockquote>
<p>Hallo C++ler</p>
<p>Ich arbeite momentan an einem Projekt in C++ native (ohne clr support) im VS2005.<br />
Durch fälschliche Initialisierung eines Pointers bekomm ich im Programm einen Pointer auf 0x0000f (oder so ähnlich).<br />
Auf den wird im Progrogramm zugegriffen was zu einer exception führt. Die exception ist: Unhandeld exception at..... Access violation reading location 0x.... und wird in einer externen dll (release) geworfen.<br />
Jedoch befindet sich alles in einem try {} catch(...){} block, aber trotzdem kann ich den code nicht weiter ausführen!<br />
Warum wird diese Exception nicht im catch behandelt?</p>
<p>MFG Speeedy</p>
</blockquote>
<p>Das ist einne hardware exception und du behandelst nur software exceptions.<br />
Davon mal abgesehen macht es keinen Sinn zu versuchen dein Programm zu retten weil du Fehler bei der Programmierung gemacht hast. Ich persönlich versuche alles unbehandelte einfach durch fallen zu lassen und catche nur was ich auch erwarte. Zusätzlich hab ich auf Windows einen handler im Program registriert der bei unbehandelten exceptions jeglicher art aufgerufen wird und mir einen dump schreibt. In den meisten fällen hilft einem der Dump dann dabei die stelle im Code zu finden. Das ist vorallem interessant bei Abstürzen die bei Kunden auftreten. Dafür muss man dann aber für jedes release die passenden debug symbols haben sonst hat man ein Problem <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f921.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--clown_face"
      title=":clown:"
      alt="🤡"
    /></p>
<p>BR<br />
Vinzenz</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1596733</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1596733</guid><dc:creator><![CDATA[evilissimo]]></dc:creator><pubDate>Fri, 10 Oct 2008 08:49:31 GMT</pubDate></item><item><title><![CDATA[Reply to Unhandleld Exception trotz try catch on Fri, 10 Oct 2008 08:54:16 GMT]]></title><description><![CDATA[<p>Speeedy schrieb:</p>
<blockquote>
<p>Wir steigen momentan von VS6 auf VS8 (2005) um und erst im VS8 stellten wir dies fest. Im VS6 zeigten die Zeiger immer auf eine gewisse Addresse (Fragt mich nicht warum...!)<br />
Auf null setzen würd ich ja gerne aber da hätt ich wohl schon fast Monate um alles zu überprüfen und es kämen sicher immer wieder neue...<br />
Gibts nicht eine andere möglichkeit? (z.b. VS oder zusätzliche Software die das überprüft..?)</p>
</blockquote>
<p>Setz doch mal den Warning-Level auf Maximum. Kanns gerade nicht ausprobieren, aber wenn du Glück hast, gibts einen Warning bei nicht initialisierten Variablen.<br />
Mal ganz davon abgesehen, das jetzt Eure gemachten Programmierfehler der letzten Jahre jetzt ans Tageslicht kommen.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1596739</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1596739</guid><dc:creator><![CDATA[HansiHinterseher]]></dc:creator><pubDate>Fri, 10 Oct 2008 08:54:16 GMT</pubDate></item><item><title><![CDATA[Reply to Unhandleld Exception trotz try catch on Sat, 11 Oct 2008 15:43:19 GMT]]></title><description><![CDATA[<p>Japp - spätestens auf W4 sollte das kommen (sollte in etwa &quot;möglicher zugriff auf uninitialisierte varialbe&quot; heißen)...</p>
<p>MSVC schrieb:</p>
<blockquote>
<p>warning C4701: Die möglicherweise nicht initialisierte lokale Variable &quot;blubb&quot; wurde verwendet.</p>
</blockquote>
<p>also wirste wirklich mal auf W4 setzen müssen... allerdings habe ich so die befürchtung, dass (wenn ihr uninitialisierte pointer verwendet) noch sehr viel mehr fehler auftreten - also wirste nen bisschen dafür brauchen ^^</p>
<p>naja - hf und gl <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f609.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--winking_face"
      title=";)"
      alt="😉"
    /></p>
]]></description><link>https://www.c-plusplus.net/forum/post/1597463</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1597463</guid><dc:creator><![CDATA[unskilled]]></dc:creator><pubDate>Sat, 11 Oct 2008 15:43:19 GMT</pubDate></item><item><title><![CDATA[Reply to Unhandleld Exception trotz try catch on Sat, 11 Oct 2008 20:02:41 GMT]]></title><description><![CDATA[<p>Unterbricht nicht sogar der Debugger automatisch, wenn auf nicht gesetzte Variablen lesend zugegriffen wird?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1597596</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1597596</guid><dc:creator><![CDATA[Badestrand]]></dc:creator><pubDate>Sat, 11 Oct 2008 20:02:41 GMT</pubDate></item><item><title><![CDATA[Reply to Unhandleld Exception trotz try catch on Sat, 11 Oct 2008 20:45:45 GMT]]></title><description><![CDATA[<p>Badestrand schrieb:</p>
<blockquote>
<p>Unterbricht nicht sogar der Debugger automatisch, wenn auf nicht gesetzte Variablen lesend zugegriffen wird?</p>
</blockquote>
<p>Doch, mit <em>Run-Time Check Failure #3</em> (unter MSVC++ 2008 Express). <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f609.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--winking_face"
      title=";)"
      alt="😉"
    /></p>
<p>Verlassen sollte man sich darauf trotzdem nicht...</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1597611</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1597611</guid><dc:creator><![CDATA[Nexus]]></dc:creator><pubDate>Sat, 11 Oct 2008 20:45:45 GMT</pubDate></item></channel></rss>