<?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[Fehler in DLL abfangen]]></title><description><![CDATA[<p>Ist es möglich einen Fehler in einer (fremden) DLL abzufangen?</p>
<p>Wenn ich von meinem Hauptprogramm eine &quot;fremde&quot; DLL-Function aufrufe und die z.B. durch 0 teilt, stürzt mein ganze Prog ab. Kann ich nicht den Fehler irgendwie abfangen....?</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/6016/fehler-in-dll-abfangen</link><generator>RSS for Node</generator><lastBuildDate>Wed, 15 Apr 2026 09:30:02 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/6016.rss" rel="self" type="application/rss+xml"/><pubDate>Tue, 03 Jun 2003 10:30:00 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to Fehler in DLL abfangen on Tue, 03 Jun 2003 10:30:00 GMT]]></title><description><![CDATA[<p>Ist es möglich einen Fehler in einer (fremden) DLL abzufangen?</p>
<p>Wenn ich von meinem Hauptprogramm eine &quot;fremde&quot; DLL-Function aufrufe und die z.B. durch 0 teilt, stürzt mein ganze Prog ab. Kann ich nicht den Fehler irgendwie abfangen....?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/29224</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/29224</guid><dc:creator><![CDATA[AnTri]]></dc:creator><pubDate>Tue, 03 Jun 2003 10:30:00 GMT</pubDate></item><item><title><![CDATA[Reply to Fehler in DLL abfangen on Tue, 03 Jun 2003 12:21:00 GMT]]></title><description><![CDATA[<p>jepp:</p>
<pre><code class="language-cpp">try//Exceptions, die hier ausgelöst werden,
{
    DllFunc();
}
catch(...)//werden hier abgefangen (wichtig: catch(...) nicht catch())
{
    ;
}
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/29225</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/29225</guid><dc:creator><![CDATA[cLE]]></dc:creator><pubDate>Tue, 03 Jun 2003 12:21:00 GMT</pubDate></item><item><title><![CDATA[Reply to Fehler in DLL abfangen on Tue, 03 Jun 2003 12:39:00 GMT]]></title><description><![CDATA[<p>klappt so aber nicht. Wenn die DLL eine Division durch 0 ausführt, schmiert mein ganzes Prog ab.....</p>
]]></description><link>https://www.c-plusplus.net/forum/post/29226</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/29226</guid><dc:creator><![CDATA[AnTri]]></dc:creator><pubDate>Tue, 03 Jun 2003 12:39:00 GMT</pubDate></item><item><title><![CDATA[Reply to Fehler in DLL abfangen on Tue, 03 Jun 2003 13:22:00 GMT]]></title><description><![CDATA[<pre><code class="language-cpp">#include &lt;new&gt;

//
// function template emulating 'new(std::nothrow)'
//
template&lt;typename T&gt;
T *new_nothrow() throw()
   {
   T *p;
   try
      {
      p = new T;
      }
   catch(std::bad_alloc &amp;)
      {
      p = NULL;
      }
   return p;
   }

//
// example usage
//
int main()
   {
   int *p = new_nothrow&lt;int&gt;(); // equivalent to 'new(nothrow) int'
   return 0;
   }
</code></pre>
<p>als zusatz throw() fehlt in deiner dll</p>
<p>[ Dieser Beitrag wurde am 03.06.2003 um 15:23 Uhr von <strong>vdittrich</strong> editiert. ]</p>
]]></description><link>https://www.c-plusplus.net/forum/post/29227</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/29227</guid><dc:creator><![CDATA[vdittrich]]></dc:creator><pubDate>Tue, 03 Jun 2003 13:22:00 GMT</pubDate></item><item><title><![CDATA[Reply to Fehler in DLL abfangen on Tue, 03 Jun 2003 13:30:00 GMT]]></title><description><![CDATA[<p>Zuerst einmal vielen Dank, aber ich kann Deinem Code nicht so richtig folgen. Vielleicht hast Du mich auch falsch verstanden.</p>
<p>Ich will in einer &quot;fremden&quot; DLL deren Code ich nicht ändern kann (die aber Fehler hat) eine Function z.B: CalcX(..) ausführen. Mein Problem ist, das CalcX seinerseits functions aufruft, die DiV/0 ausführen können. In diesem Fall hätte ich gerne eine Ausnahmebehandlung in meinem Prog damit nicht alles abschmiert....</p>
<p>DANKE!</p>
]]></description><link>https://www.c-plusplus.net/forum/post/29228</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/29228</guid><dc:creator><![CDATA[AnTri]]></dc:creator><pubDate>Tue, 03 Jun 2003 13:30:00 GMT</pubDate></item><item><title><![CDATA[Reply to Fehler in DLL abfangen on Tue, 03 Jun 2003 13:34:00 GMT]]></title><description><![CDATA[<p>Standard C++ kennt keine DLLs.<br />
Du kannst den Fehler nicht abfangen, dies hängt vom Compiler ab.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/29229</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/29229</guid><dc:creator><![CDATA[virtual]]></dc:creator><pubDate>Tue, 03 Jun 2003 13:34:00 GMT</pubDate></item><item><title><![CDATA[Reply to Fehler in DLL abfangen on Tue, 03 Jun 2003 13:35:00 GMT]]></title><description><![CDATA[<p><a class="plugin-mentions-user plugin-mentions-a" href="https://www.c-plusplus.net/forum/uid/544">@AnTri</a></p>
<p>Programm -&gt; Mann<br />
DLL -&gt; Frau</p>
<p>Programm linkt DLL -&gt; Mann heiratet Frau<br />
DLL generiert Fehler -&gt; Frau will net</p>
<p>Hat Mann in den letzten mehreren tausend Jahren Evolution schon eine Lösung gefunden? (eher net)</p>
<p><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="😉"
    /> <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/29230</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/29230</guid><dc:creator><![CDATA[RenéG]]></dc:creator><pubDate>Tue, 03 Jun 2003 13:35:00 GMT</pubDate></item><item><title><![CDATA[Reply to Fehler in DLL abfangen on Wed, 04 Jun 2003 12:15:00 GMT]]></title><description><![CDATA[<p>Wenn du mit Fließkommazahlen arbeitest, hilfen dir vielleicht diese Funktionen weiter (möglicherweise MSVC++ spezifisch):</p>
<pre><code class="language-cpp">unsigned int _control87( unsigned int new, unsigned int mask );
unsigned int _controlfp( unsigned int new, unsigned int mask );
</code></pre>
<p>Mit diesen Funktionen müsstest du die Hardware Exceptions bei Division durch 0 deaktivieren können.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/29231</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/29231</guid><dc:creator><![CDATA[cLE]]></dc:creator><pubDate>Wed, 04 Jun 2003 12:15:00 GMT</pubDate></item><item><title><![CDATA[Reply to Fehler in DLL abfangen on Wed, 04 Jun 2003 13:59:00 GMT]]></title><description><![CDATA[<p>Hallo,<br />
welchen Compiler verwendest du?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/29232</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/29232</guid><dc:creator><![CDATA[HumeSikkins]]></dc:creator><pubDate>Wed, 04 Jun 2003 13:59:00 GMT</pubDate></item><item><title><![CDATA[Reply to Fehler in DLL abfangen on Wed, 04 Jun 2003 14:03:00 GMT]]></title><description><![CDATA[<blockquote>
<p>Original erstellt von &lt;cLE&gt;:<br />
<strong>möglicherweise MSVC++ spezifisch</strong></p>
</blockquote>
<p>Ja, ist nicht ANSI C sondern nur Win95/NT kompatibel...</p>
]]></description><link>https://www.c-plusplus.net/forum/post/29233</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/29233</guid><dc:creator><![CDATA[Walli]]></dc:creator><pubDate>Wed, 04 Jun 2003 14:03:00 GMT</pubDate></item><item><title><![CDATA[Reply to Fehler in DLL abfangen on Wed, 04 Jun 2003 14:05:00 GMT]]></title><description><![CDATA[<p>Compiler: MS VC++ 7.0</p>
]]></description><link>https://www.c-plusplus.net/forum/post/29234</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/29234</guid><dc:creator><![CDATA[AnTri]]></dc:creator><pubDate>Wed, 04 Jun 2003 14:05:00 GMT</pubDate></item></channel></rss>