<?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[Progamm schließen]]></title><description><![CDATA[<p>Hallo,</p>
<p>ich würde gerne eine Funktion haben, wodrin ich irgendwas machen kann, wenn der User das Programm über das X-Button bzw unten in der Taskleiste auf schließen klickt (ALT + F4).</p>
<p>Ich habe nämlich vor, dass ich eine Aktion ausfürhen möchte, sobald das Programm nicht durch den User geschlossen wird, sondern durch Windows, beim Herrunterfahren oder ähnliches...</p>
<p>Wie kann ich das realisieren?</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/204342/progamm-schließen</link><generator>RSS for Node</generator><lastBuildDate>Wed, 19 Aug 2026 16:11:27 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/204342.rss" rel="self" type="application/rss+xml"/><pubDate>Fri, 01 Feb 2008 21:46:52 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to Progamm schließen on Fri, 01 Feb 2008 21:47:32 GMT]]></title><description><![CDATA[<p>Hallo,</p>
<p>ich würde gerne eine Funktion haben, wodrin ich irgendwas machen kann, wenn der User das Programm über das X-Button bzw unten in der Taskleiste auf schließen klickt (ALT + F4).</p>
<p>Ich habe nämlich vor, dass ich eine Aktion ausfürhen möchte, sobald das Programm nicht durch den User geschlossen wird, sondern durch Windows, beim Herrunterfahren oder ähnliches...</p>
<p>Wie kann ich das realisieren?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1447844</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1447844</guid><dc:creator><![CDATA[TheCaleb]]></dc:creator><pubDate>Fri, 01 Feb 2008 21:47:32 GMT</pubDate></item><item><title><![CDATA[Reply to Progamm schließen on Fri, 01 Feb 2008 21:57:35 GMT]]></title><description><![CDATA[<p>Hallo</p>
<p>Siehe die Events TForm::OnClose und ::OnCloseQuery. Die werden aber immer aufgerufen egal wie das Fenster geschlossen wurde.</p>
<p>bis bald<br />
akari</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1447850</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1447850</guid><dc:creator><![CDATA[akari]]></dc:creator><pubDate>Fri, 01 Feb 2008 21:57:35 GMT</pubDate></item><item><title><![CDATA[Reply to Progamm schließen on Fri, 01 Feb 2008 22:52:17 GMT]]></title><description><![CDATA[<p>Jo, danke die Funktionen kenne ich, doch wie kann ich unterscheiden, ob der User oder halt Windows beim z.B. Herrunterfahren das Programm schließen wollte?<br />
Ansich reicht schon alleine das Herrunterfahren!</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1447872</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1447872</guid><dc:creator><![CDATA[TheCaleb]]></dc:creator><pubDate>Fri, 01 Feb 2008 22:52:17 GMT</pubDate></item><item><title><![CDATA[Reply to Progamm schließen on Fri, 01 Feb 2008 22:57:26 GMT]]></title><description><![CDATA[<p>Hallo,</p>
<p>TheCaleb schrieb:</p>
<blockquote>
<p>Ich habe nämlich vor, dass ich eine Aktion ausfürhen möchte, sobald das Programm nicht durch den User geschlossen wird, sondern durch Windows, beim Herrunterfahren oder ähnliches...</p>
</blockquote>
<p>Für's Herunterfahren (und Restart, Logoff) reagiere auf WM_QUERYENDSESSION. Denke daran, dass deine &quot;Aktion&quot; nicht länger als 5 Sekunden dauern sollte, sonst wird sie von &gt;=NT6.0 abgeschossen.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1447876</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1447876</guid><dc:creator><![CDATA[Freiheit]]></dc:creator><pubDate>Fri, 01 Feb 2008 22:57:26 GMT</pubDate></item><item><title><![CDATA[Reply to Progamm schließen on Sat, 02 Feb 2008 00:28:45 GMT]]></title><description><![CDATA[<p>Danke!<br />
Aber wie genau geht das nochmal?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1447900</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1447900</guid><dc:creator><![CDATA[TheCaleb]]></dc:creator><pubDate>Sat, 02 Feb 2008 00:28:45 GMT</pubDate></item><item><title><![CDATA[Reply to Progamm schließen on Sat, 02 Feb 2008 08:03:44 GMT]]></title><description><![CDATA[<p>Siehe <a href="http://www.c-plusplus.net/forum/viewtopic.php?t=39305" rel="nofollow">FAQ</a>, Abschnitt &quot;System&quot;.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1447918</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1447918</guid><dc:creator><![CDATA[Jansen]]></dc:creator><pubDate>Sat, 02 Feb 2008 08:03:44 GMT</pubDate></item><item><title><![CDATA[Reply to Progamm schließen on Sat, 02 Feb 2008 09:59:49 GMT]]></title><description><![CDATA[<p>Meiner Erfahrung nach wird OnClose bzw. OnCloseQuery nicht aufgerufen wenn man die Hardcore-Beendemethode Application.Terminate(); verwendet.<br />
Nur als Hinweis,<br />
RedPuma</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1447954</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1447954</guid><dc:creator><![CDATA[RedPuma]]></dc:creator><pubDate>Sat, 02 Feb 2008 09:59:49 GMT</pubDate></item><item><title><![CDATA[Reply to Progamm schließen on Sat, 02 Feb 2008 12:00:57 GMT]]></title><description><![CDATA[<p>Wie schon erwähnt musst du auf WM_QUERYENDSESSION reagieren.</p>
<p>Message Handler<br />
.h</p>
<pre><code class="language-cpp">protected:
BEGIN_MESSAGE_MAP
   MESSAGE_HANDLER(WM_QUERYENDSESSION,TMessage,OnWMQueryEndSession)
END_MESSAGE_MAP(TForm);
</code></pre>
<p>Dann kannst du deine Sachen erledigen. Allerdings musst du das wie gesagt schneller erledigen, da sonst der Anwender die Möglichkeit erhält deinen Prozess zu killen.</p>
<pre><code class="language-cpp">void __fastcall TForm1::OnWMQueryEndSession(TMessage &amp;Message)
{
  ...machwas

  Message.Result=1;
}
</code></pre>
<p>Und das bremst auch nur das DAU - Herunterfahren...</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1447992</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1447992</guid><dc:creator><![CDATA[schoeffit]]></dc:creator><pubDate>Sat, 02 Feb 2008 12:00:57 GMT</pubDate></item><item><title><![CDATA[Reply to Progamm schließen on Sat, 02 Feb 2008 12:55:57 GMT]]></title><description><![CDATA[<p>Vielen Dank, ich habe es jetzt mit OnWMQueryEndSession() gemacht und erreicht, was ich wollte!</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1448012</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1448012</guid><dc:creator><![CDATA[TheCaleb]]></dc:creator><pubDate>Sat, 02 Feb 2008 12:55:57 GMT</pubDate></item><item><title><![CDATA[Reply to Progamm schließen on Tue, 05 Feb 2008 18:57:45 GMT]]></title><description><![CDATA[<p>Ich habe da noch eine Frage:</p>
<p>Wenn mein Programm minimiert ist ( visible=false und mit trayicon ), dann kommt die Message nicht an, bzw auf welche Message muss ich dann warten??</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1450016</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1450016</guid><dc:creator><![CDATA[TheCaleb]]></dc:creator><pubDate>Tue, 05 Feb 2008 18:57:45 GMT</pubDate></item><item><title><![CDATA[Reply to Progamm schließen on Tue, 05 Feb 2008 19:36:26 GMT]]></title><description><![CDATA[<p>TheCaleb schrieb:</p>
<blockquote>
<p>Wenn mein Programm minimiert ist ( visible=false und mit trayicon ), dann kommt die Message nicht an, bzw auf welche Message muss ich dann warten??</p>
</blockquote>
<p>Hast du die Nachrichtenbehandlung in deiner &quot;Hauptform&quot;?<br />
Davon abgesehen, dass ich Nachrichten mit einer überschriebenen WndProc behandle, kann ich dir sagen, dass WM_QUERYENDSESSION definitiv auch bei unsichtbarer, minimierter und transparenter (Haupt)Form ankommt.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1450030</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1450030</guid><dc:creator><![CDATA[Freiheit]]></dc:creator><pubDate>Tue, 05 Feb 2008 19:36:26 GMT</pubDate></item><item><title><![CDATA[Reply to Progamm schließen on Tue, 05 Feb 2008 20:05:59 GMT]]></title><description><![CDATA[<p>Hm also ich führe in der Funktion __fastcall TForm1::TForm1(TComponent* Owner): TForm(Owner) diesen Befehl aus Form1-&gt;WindowState=wsMinimized; , damit mein Fenster minimiert ist und ich es unsichtbar machen kann.<br />
Es liegt definitiv an Form1-&gt;WindowState=wsMinimized; , doch wie bekomm ich es sonst hin, dass das Fenster einfach minimiert ist?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1450050</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1450050</guid><dc:creator><![CDATA[TheCaleb]]></dc:creator><pubDate>Tue, 05 Feb 2008 20:05:59 GMT</pubDate></item><item><title><![CDATA[Reply to Progamm schließen on Tue, 05 Feb 2008 21:26:30 GMT]]></title><description><![CDATA[<p>Eventuell mal im Release versuchen ?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1450097</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1450097</guid><dc:creator><![CDATA[nurmalsonebenbei]]></dc:creator><pubDate>Tue, 05 Feb 2008 21:26:30 GMT</pubDate></item><item><title><![CDATA[Reply to Progamm schließen on Wed, 06 Feb 2008 05:51:03 GMT]]></title><description><![CDATA[<p>...wie ich es mir schon dachte, es klappt dennnoch nicht</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1450211</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1450211</guid><dc:creator><![CDATA[TheCaleb]]></dc:creator><pubDate>Wed, 06 Feb 2008 05:51:03 GMT</pubDate></item><item><title><![CDATA[Reply to Progamm schließen on Wed, 06 Feb 2008 09:13:00 GMT]]></title><description><![CDATA[<p>TheCaleb schrieb:</p>
<blockquote>
<p>Es liegt definitiv an Form1-&gt;WindowState=wsMinimized;</p>
</blockquote>
<p>Das ist abnormal. <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f62e.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--face_with_open_mouth"
      title=":open_mouth:"
      alt="😮"
    /></p>
]]></description><link>https://www.c-plusplus.net/forum/post/1450301</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1450301</guid><dc:creator><![CDATA[Freiheit]]></dc:creator><pubDate>Wed, 06 Feb 2008 09:13:00 GMT</pubDate></item><item><title><![CDATA[Reply to Progamm schließen on Wed, 06 Feb 2008 09:28:14 GMT]]></title><description><![CDATA[<p>Also wenn ich diesen Befehl zum Programmanfang nicht ausführe klappt alles, ansonsten muss ich das Programm erst manuell maximieren und dann wieder minimieren.<br />
Danach klappt das!</p>
<p>Gibt es vielleicht ein anderen Befehl um das Programm zu minimieren??</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1450315</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1450315</guid><dc:creator><![CDATA[TheCaleb]]></dc:creator><pubDate>Wed, 06 Feb 2008 09:28:14 GMT</pubDate></item><item><title><![CDATA[Reply to Progamm schließen on Wed, 06 Feb 2008 13:20:10 GMT]]></title><description><![CDATA[<blockquote>
<p>Es liegt definitiv an Form1-&gt;WindowState=wsMinimized;</p>
</blockquote>
<p>Also ich hab mir mal eben die Mühe gemacht das nachzubilden und es klappt unabhängig davon ob das Fenster minimiert oder maximiert ist.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1450539</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1450539</guid><dc:creator><![CDATA[probs]]></dc:creator><pubDate>Wed, 06 Feb 2008 13:20:10 GMT</pubDate></item><item><title><![CDATA[Reply to Progamm schließen on Wed, 06 Feb 2008 15:17:56 GMT]]></title><description><![CDATA[<p>Also ich möchte mit folgedem Code das Fenster minimieren und unsichtbar schalten:</p>
<pre><code>__fastcall TForm1::TForm1(TComponent* Owner)
		: TForm(Owner)
{
    ...
    Form1-&gt;Visible=false;
    Form1-&gt;WindowState=wsMinimized;
    ....
</code></pre>
<p>Wenn ich das die beiden Funktionen herrausnehme, dann klappt das mit der Message beim Herunterfahren, ansonsten irgendwie nicht!</p>
<p>Gibt es irgendeine andere Möglichkeit das Fenster(Form1=Hauptform) minimiert und unsichtbar zu starten??</p>
<p>Oder wodran könnte mein Problem liegen?<br />
Ich habe auch mal gelesen, dass z.B. Programme ohne Fenster keine Message bekommen und in diesem Fall ist das Fenster ja minimiert und unsichtbar ...</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1450644</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1450644</guid><dc:creator><![CDATA[TheCaleb]]></dc:creator><pubDate>Wed, 06 Feb 2008 15:17:56 GMT</pubDate></item><item><title><![CDATA[Reply to Progamm schließen on Wed, 06 Feb 2008 15:52:09 GMT]]></title><description><![CDATA[<pre><code class="language-cpp">Form1-&gt;Visible=false; 
    Form1-&gt;WindowState=wsMinimized;
</code></pre>
<p>sitzt bei mir genauso im Konstruktor und es wird trotzdem die Message an Form1 gesendet.<br />
Das Problem liegt irgendwo anders.<br />
Dazu müsste man sehen, was du sonst noch machst.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1450676</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1450676</guid><dc:creator><![CDATA[probs]]></dc:creator><pubDate>Wed, 06 Feb 2008 15:52:09 GMT</pubDate></item><item><title><![CDATA[Reply to Progamm schließen on Wed, 06 Feb 2008 17:00:27 GMT]]></title><description><![CDATA[<p>Hmmm ich mache das jetzt in einer anderen Funktion mit dem Befehl Application-&gt;Minimize(); und es klappt, komisch!</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1450713</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1450713</guid><dc:creator><![CDATA[TheCaleb]]></dc:creator><pubDate>Wed, 06 Feb 2008 17:00:27 GMT</pubDate></item></channel></rss>