<?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[FindWindow ist komisch]]></title><description><![CDATA[<p>Hi, ich hätte da mal ne Frage. Also ich starte mit CreateProcess eine Batch-Datei.<br />
Dannach will ich wissen ob die Batch durchgelaufen ist , oder ob sie abgebrochen wurde bzw. ob ein Fehler aufgetreten ist.</p>
<p>Das mach ich so :</p>
<pre><code class="language-cpp">if(CWnd * pWnd = FindWindow(0,&quot;C:\\WINDOWS\\system32\\cmd.exe&quot; ))
{
AfxMessageBox(&quot;Ein Fehler ist aufgetreten! Prozess abbgebrochen!&quot;);
ShowWindow(SW_SHOW);
return OnInitDialog();

}

else
{
MessageBox(&quot;Erfolgreich Beendet!&quot;);
OnCancel();  
}
</code></pre>
<p>Ab und zu funktioniert das und ab und zu nicht. Ich hab keine Ahnung warum <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f615.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--confused_face"
      title=":confused:"
      alt="😕"
    /><br />
Kann mir vll einer sagen warum das überhaupt ab und zu funktioniert und warum es nicht immer funktionieren kann <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f644.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--face_with_rolling_eyes"
      title=":rolling_eyes:"
      alt="🙄"
    /> ?</p>
<p>Mfg</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/198940/findwindow-ist-komisch</link><generator>RSS for Node</generator><lastBuildDate>Tue, 07 Apr 2026 21:32:56 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/198940.rss" rel="self" type="application/rss+xml"/><pubDate>Tue, 27 Nov 2007 10:49:05 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to FindWindow ist komisch on Tue, 27 Nov 2007 10:49:05 GMT]]></title><description><![CDATA[<p>Hi, ich hätte da mal ne Frage. Also ich starte mit CreateProcess eine Batch-Datei.<br />
Dannach will ich wissen ob die Batch durchgelaufen ist , oder ob sie abgebrochen wurde bzw. ob ein Fehler aufgetreten ist.</p>
<p>Das mach ich so :</p>
<pre><code class="language-cpp">if(CWnd * pWnd = FindWindow(0,&quot;C:\\WINDOWS\\system32\\cmd.exe&quot; ))
{
AfxMessageBox(&quot;Ein Fehler ist aufgetreten! Prozess abbgebrochen!&quot;);
ShowWindow(SW_SHOW);
return OnInitDialog();

}

else
{
MessageBox(&quot;Erfolgreich Beendet!&quot;);
OnCancel();  
}
</code></pre>
<p>Ab und zu funktioniert das und ab und zu nicht. Ich hab keine Ahnung warum <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f615.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--confused_face"
      title=":confused:"
      alt="😕"
    /><br />
Kann mir vll einer sagen warum das überhaupt ab und zu funktioniert und warum es nicht immer funktionieren kann <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f644.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--face_with_rolling_eyes"
      title=":rolling_eyes:"
      alt="🙄"
    /> ?</p>
<p>Mfg</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1410864</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1410864</guid><dc:creator><![CDATA[toxor]]></dc:creator><pubDate>Tue, 27 Nov 2007 10:49:05 GMT</pubDate></item><item><title><![CDATA[Reply to FindWindow ist komisch on Tue, 27 Nov 2007 10:56:51 GMT]]></title><description><![CDATA[<p>Wie äußert sich denn das &quot;Ab und zu funktioniert das und ab und zu nicht&quot;?</p>
<p>Und warum betreibst du überhaupt diesen Aufwand? CreateProcess() liefert dir doch auch einen Handle auf das geöffnete Programm zurück, an dem du viel zuverlässiger feststellen kannst, ob es noch läuft:</p>
<pre><code class="language-cpp">PROCESS_INFORMATION pi;
CreateProcess(..., &amp;pi);

...

if(WaitForSingleObject(pi.hProcess,0)==WAIT_TIMEOUT)
{
  AfxMessageBox(&quot;Batch läuft noch&quot;);
}
else
{
  AfxMessageBox(&quot;erfolgreich beendet&quot;);
  CloseHandle(pi.hProcess);
  CloseHandle(pi.hThread);
}
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/1410870</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1410870</guid><dc:creator><![CDATA[CStoll]]></dc:creator><pubDate>Tue, 27 Nov 2007 10:56:51 GMT</pubDate></item><item><title><![CDATA[Reply to FindWindow ist komisch on Tue, 27 Nov 2007 11:52:49 GMT]]></title><description><![CDATA[<p>Naja ab und zu zeigt er mir eben an das ein Fehler aufgetreten ist wenn ich die Batch schliesse während sie noch läuft.<br />
Und ab und zu zeigt er mir die Fehlermeldung an obwohl eigentlich alles glatt gelaufen ist.<br />
Andersherum isses dasselbe, ab und zu zeigt er mir an das der Prozess erfolgreich war, obwohl er es nicht war, da ich die batch während dem ausführen geschlossen habe.</p>
<p>Ich wusste nicht wie ich das mit dem CreateProcess handle handhaben soll, aber so wie du es geschrieben hast funtzt es , danke <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>
<p>Edit : Mist, leider ist das doch was ganz anderes bei dir. Mit deinem Code zeigt er mir natürlich richtig an das der Prozess läuft während die Batch läuft, aber wenn ich während die Batch läuft, die Batch schliesse, zeigt er mir trotzdem an das die Batch erfolgreich war...</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1410890</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1410890</guid><dc:creator><![CDATA[toxor]]></dc:creator><pubDate>Tue, 27 Nov 2007 11:52:49 GMT</pubDate></item><item><title><![CDATA[Reply to FindWindow ist komisch on Tue, 27 Nov 2007 12:40:27 GMT]]></title><description><![CDATA[<p>Habs jetzt mal mit mit dem tollen GetExitCodeProcess versucht...aber da geht auch nix.</p>
<pre><code class="language-cpp">WaitForSingleObject(pi.hProcess,INFINITE);
CloseHandle(pi.hProcess);
CloseHandle(pi.hThread); 

LPDWORD code;

GetExitCodeProcess(pi.hProcess,code);

if(code != NULL)
{
ShowWindow(SW_RESTORE);
MessageBox(&quot;moep&quot;);
}

else
{
ShowWindow(SW_RESTORE);
MessageBox(&quot;Beendet!&quot;);	
}
</code></pre>
<p>Eigentlich musste doch der exitcodeprocess unterschiedlich sein wenn der Batch Prozess abgebrochen wird oder eben sich von selbst beendet. Aber wenn ich im Debugger nachgucke, gibt der mir immer den selben Wert von &quot;code&quot;. Warum erkennt der da keinen Unterschied ?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1410933</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1410933</guid><dc:creator><![CDATA[toxor]]></dc:creator><pubDate>Tue, 27 Nov 2007 12:40:27 GMT</pubDate></item><item><title><![CDATA[Reply to FindWindow ist komisch on Tue, 27 Nov 2007 12:50:58 GMT]]></title><description><![CDATA[<p>Erstens: Die beiden CloseHandle-Aufrufe solltest du erst dann unterbringen, wenn du die Handles nicht mehr benötigst - und diese Handles sind deine einzige Verbindung zur Batch-Datei.</p>
<p>Zweitens: Es ist eine Weile her, seitdem ich mit Batch-Dateien gearbeitet habe, aber afair bieten die nahezu keine Möglichkeit zu Status-Rückgaben. Da mußt du wohl eine eigene Möglichkeit finden, wie die Batch-Datei dem Aufrufer mitteilt, was aus ihr geworden ist.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1410942</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1410942</guid><dc:creator><![CDATA[CStoll]]></dc:creator><pubDate>Tue, 27 Nov 2007 12:50:58 GMT</pubDate></item><item><title><![CDATA[Reply to FindWindow ist komisch on Tue, 27 Nov 2007 12:56:21 GMT]]></title><description><![CDATA[<p>Hmmm ok schade, aber trotzdem thx für die Info</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1410948</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1410948</guid><dc:creator><![CDATA[toxor]]></dc:creator><pubDate>Tue, 27 Nov 2007 12:56:21 GMT</pubDate></item></channel></rss>