<?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[COM Objekt abwürgen]]></title><description><![CDATA[<p>Hallo,</p>
<p>ich hab mittels CoCreateInstance ein COM Objekt erzeugt und rufe von diesem aus eine sehr aufwändige Funktion auf. Deshalb hab ich den Aufruf dieser Funktion in einen Thread gepackt. Nun hätte ich es auch noch ganz gerne dass man den Vorgang während der Durchführung abbrechen kann. Jedoch scheint es nicht damit getan zu sein, den Thread abzuschießen, da ein wiederholtes Aufrufen der Funktion dann zu einer Ausnahme führt (in der DLL in der das Objekt definiert ist).</p>
<p>Weiß jemand wie ich dieses COM Objekt bei Benutzerabbruch komplett lahmlegen kann, sodass ich es danach wieder neu benutzen kann?</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/185490/com-objekt-abwürgen</link><generator>RSS for Node</generator><lastBuildDate>Sun, 05 Jul 2026 16:08:56 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/185490.rss" rel="self" type="application/rss+xml"/><pubDate>Tue, 26 Jun 2007 10:06:07 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to COM Objekt abwürgen on Tue, 26 Jun 2007 10:06:07 GMT]]></title><description><![CDATA[<p>Hallo,</p>
<p>ich hab mittels CoCreateInstance ein COM Objekt erzeugt und rufe von diesem aus eine sehr aufwändige Funktion auf. Deshalb hab ich den Aufruf dieser Funktion in einen Thread gepackt. Nun hätte ich es auch noch ganz gerne dass man den Vorgang während der Durchführung abbrechen kann. Jedoch scheint es nicht damit getan zu sein, den Thread abzuschießen, da ein wiederholtes Aufrufen der Funktion dann zu einer Ausnahme führt (in der DLL in der das Objekt definiert ist).</p>
<p>Weiß jemand wie ich dieses COM Objekt bei Benutzerabbruch komplett lahmlegen kann, sodass ich es danach wieder neu benutzen kann?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1313879</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1313879</guid><dc:creator><![CDATA[Creon]]></dc:creator><pubDate>Tue, 26 Jun 2007 10:06:07 GMT</pubDate></item><item><title><![CDATA[Reply to COM Objekt abwürgen on Tue, 26 Jun 2007 10:47:19 GMT]]></title><description><![CDATA[<p>Das hängt von dem COM Objekt ab. Wenn dieses eine DLL ist die im Prozess liegt, dann kann das abbrechen (abschiessen des Threads) diesen in einem undefinierbaren Zustand lassen.</p>
<p>Du hast da keine &quot;saubere&quot; Möglichkeit, wenn diese nicht selbst in dem Objekt Model vorgesehen wird.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1313906</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1313906</guid><dc:creator><![CDATA[Martin Richter]]></dc:creator><pubDate>Tue, 26 Jun 2007 10:47:19 GMT</pubDate></item><item><title><![CDATA[Reply to COM Objekt abwürgen on Tue, 26 Jun 2007 10:49:54 GMT]]></title><description><![CDATA[<p>wenn's in einer DLL steckt hilft vielleicht 'FreeLibrary'<br />
<img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f642.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--slightly_smiling_face"
      title=":)"
      alt="🙂"
    /></p>
]]></description><link>https://www.c-plusplus.net/forum/post/1313909</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1313909</guid><dc:creator><![CDATA[pale dog]]></dc:creator><pubDate>Tue, 26 Jun 2007 10:49:54 GMT</pubDate></item><item><title><![CDATA[Reply to COM Objekt abwürgen on Tue, 26 Jun 2007 11:32:45 GMT]]></title><description><![CDATA[<p>Danke für die Antworten...Das Handle was ich für FreeLibrary benötige habe ich nie gespeichert. Es wird nur bei starten des Programms einmal mit LoadLibrary geholt um die DLL zu registrieren, danach aber auch schon wieder freigegeben. Die DLL an der besagten Stelle mittels DllUnregisterServer zu 'deaktivieren' bringt leider auch nichts.<br />
<a class="plugin-mentions-user plugin-mentions-a" href="https://www.c-plusplus.net/forum/uid/35992">@Martin</a>: Was meinst du mit &quot;sauber&quot;? Wie würde Windows denn diesen Prozess töten, wenn ich den Prozess meines Programmes einfach ausm Taskmanager heraus vernichte?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1313935</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1313935</guid><dc:creator><![CDATA[Creon]]></dc:creator><pubDate>Tue, 26 Jun 2007 11:32:45 GMT</pubDate></item></channel></rss>