<?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[ShellExecute im Dialog verwenden]]></title><description><![CDATA[<p>Erstmal muß ich sagen, daß ich dieses Problem in anderer Form schon mal gepostet habe, aber ich komme einfach nicht weiter!!</p>
<p>Also ich hatte eine kleine Konsolenanwendung geschrieben, um die Funktion ShellExecute zu testen. Das hat alles auch dann funktioniert. Nun wollte ich das selbe auch aus einem Dialog heraus machen. Nun passiert aber leider nichts.<br />
Ich weiß jetzt nicht so recht, was ich da falsch mache oder ob das so überhaupt geht.<br />
Per Mausklick wir also die Funktion ShellExecute aufgerufen, aber es passiert leider nichts. Also das Programm, welches da gestartet werden soll, macht es einfach nicht. Das Programm ist eine Konsolenanwendung. Muß ich das etwa als Thread machen?</p>
<p>Edit 1: Das Programm, welches gestartet werden soll, soll eine Routine im Hintergrund ausführen. Es handelt sich dabei um ein Sprachsynthesetool und ich habe leider keinen Code dafür. Es muß also als Konsolenanwendung eingebunden werden und immer per Mausklick ein bestimmtes Wort ausgeben.</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/148004/shellexecute-im-dialog-verwenden</link><generator>RSS for Node</generator><lastBuildDate>Sat, 18 Jul 2026 15:43:25 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/148004.rss" rel="self" type="application/rss+xml"/><pubDate>Mon, 22 May 2006 14:14:47 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to ShellExecute im Dialog verwenden on Mon, 22 May 2006 14:18:54 GMT]]></title><description><![CDATA[<p>Erstmal muß ich sagen, daß ich dieses Problem in anderer Form schon mal gepostet habe, aber ich komme einfach nicht weiter!!</p>
<p>Also ich hatte eine kleine Konsolenanwendung geschrieben, um die Funktion ShellExecute zu testen. Das hat alles auch dann funktioniert. Nun wollte ich das selbe auch aus einem Dialog heraus machen. Nun passiert aber leider nichts.<br />
Ich weiß jetzt nicht so recht, was ich da falsch mache oder ob das so überhaupt geht.<br />
Per Mausklick wir also die Funktion ShellExecute aufgerufen, aber es passiert leider nichts. Also das Programm, welches da gestartet werden soll, macht es einfach nicht. Das Programm ist eine Konsolenanwendung. Muß ich das etwa als Thread machen?</p>
<p>Edit 1: Das Programm, welches gestartet werden soll, soll eine Routine im Hintergrund ausführen. Es handelt sich dabei um ein Sprachsynthesetool und ich habe leider keinen Code dafür. Es muß also als Konsolenanwendung eingebunden werden und immer per Mausklick ein bestimmtes Wort ausgeben.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1062841</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1062841</guid><dc:creator><![CDATA[evil-peter]]></dc:creator><pubDate>Mon, 22 May 2006 14:18:54 GMT</pubDate></item><item><title><![CDATA[Reply to ShellExecute im Dialog verwenden on Mon, 22 May 2006 14:19:25 GMT]]></title><description><![CDATA[<p>Solange Du keinen Code dazu lieferst, *wie* Du es machst, kann man Dir IMHO nicht helfen...</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1062846</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1062846</guid><dc:creator><![CDATA[Jochen Kalmbach]]></dc:creator><pubDate>Mon, 22 May 2006 14:19:25 GMT</pubDate></item><item><title><![CDATA[Reply to ShellExecute im Dialog verwenden on Mon, 22 May 2006 14:54:48 GMT]]></title><description><![CDATA[<p>Ja eben so:</p>
<pre><code class="language-cpp">ShellExecute(0,&quot;open&quot;,&quot;C:\\Programme\\Speech\\bin\\speech.exe &quot;,&quot;{Hallo} -k&quot;,0,SW_HIDE);
</code></pre>
<p>Also beim Konsolentestprogramm und dann eben in der Dialoganwendung auf ein OnBnClicked-Ereignis.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1062869</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1062869</guid><dc:creator><![CDATA[evil-peter]]></dc:creator><pubDate>Mon, 22 May 2006 14:54:48 GMT</pubDate></item><item><title><![CDATA[Reply to ShellExecute im Dialog verwenden on Mon, 22 May 2006 15:53:30 GMT]]></title><description><![CDATA[<p>Kann mir denn keiner helfen? Oder fehlt noch eine Info's meinerseits?</p>
<p>Bitte um Hilfe, ist wirklich wichtig für mich!!</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1062908</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1062908</guid><dc:creator><![CDATA[evil-peter]]></dc:creator><pubDate>Mon, 22 May 2006 15:53:30 GMT</pubDate></item><item><title><![CDATA[Reply to ShellExecute im Dialog verwenden on Mon, 22 May 2006 19:51:31 GMT]]></title><description><![CDATA[<p>Kann mir denn wirklich keiner helfen?</p>
<p>Das Programm braucht doch eigentlich nur auf die Konsolenanwendung warten. Also bis das Wort generiert wird. Das kann doch eigentlich nicht so schwer sein.<br />
Das Kosolenprogramm wird ja auch gestartet, aber eben gleich wieder geschlossen.<br />
Gibt es denn keine Funktion, die das verhindert bzw. darauf wartet bis die Anwendung fertig ist?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1063083</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1063083</guid><dc:creator><![CDATA[evil-peter]]></dc:creator><pubDate>Mon, 22 May 2006 19:51:31 GMT</pubDate></item><item><title><![CDATA[Reply to ShellExecute im Dialog verwenden on Mon, 22 May 2006 20:21:57 GMT]]></title><description><![CDATA[<p>Du hast bei der EXE ein Leerzeichen am ende zu viel <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>Aber verwende doch &quot;CreateProcess&quot;; das ist IMHO sinnvoller, wenn man direkt eine EXE startet:<br />
CreateProcess(NULL, &quot;C:\\Programme\\Speech\\bin\\speech.exe {Hallo} -k&quot;, ...)</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1063102</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1063102</guid><dc:creator><![CDATA[Jochen Kalmbach]]></dc:creator><pubDate>Mon, 22 May 2006 20:21:57 GMT</pubDate></item><item><title><![CDATA[Reply to ShellExecute im Dialog verwenden on Mon, 22 May 2006 20:51:40 GMT]]></title><description><![CDATA[<p>Jochen Kalmbach schrieb:</p>
<blockquote>
<p>Du hast bei der EXE ein Leerzeichen am ende zu viel <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>Aber verwende doch &quot;CreateProcess&quot;; das ist IMHO sinnvoller, wenn man direkt eine EXE startet:<br />
CreateProcess(NULL, &quot;C:\\Programme\\Speech\\bin\\speech.exe {Hallo} -k&quot;, ...)</p>
</blockquote>
<p>An dem Leerzeichen kann es eigentlich nicht liegen. Wie gesagt, es funktioniert ja als Konsolenprogramm. Da wartet das Programm schön ab bis das Wort generiert ist und dann wird die Konsole wieder geschlossen. Und bei der Dialogvariate wird ja auch kurz die Konsole geöffnet ( also das Programm gestartet ) und dann aber eben gleich wieder geschlossen. Und das sollte eben nicht passieren.<br />
CreateProcess kann ich eigentlich nicht nehmen, weil doch da das konsolenfenster nicht im Hintergrund laufen würde ( also wie das FLAG bei ShellExecute -&gt; SW_HIDE ), oder irre ich mich da?<br />
Außerdem sollen ja sehr viele Worte generiert werden, also nicht nur &quot;Hallo&quot;. Und das halt immer auf Mausklick hintereinander!!!</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1063121</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1063121</guid><dc:creator><![CDATA[evil-peter]]></dc:creator><pubDate>Mon, 22 May 2006 20:51:40 GMT</pubDate></item><item><title><![CDATA[Reply to ShellExecute im Dialog verwenden on Mon, 22 May 2006 22:42:25 GMT]]></title><description><![CDATA[<p>Jetzt hat es geklappt. Und zwar mit ShellExecuteEx. Der Fehler war einfach nur, daß ich kein Arbeitsverzeichnis angegeben hatte!!<br />
Und mit CreateProcess geht das natürlich auch, aber das Konsolenfenster zu verstecken geht eben scheinbar doch nur mit ShellExecute oder ShellExecuteEx!!</p>
<p>Aber danke für die Hilfe</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1063154</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1063154</guid><dc:creator><![CDATA[evil-peter]]></dc:creator><pubDate>Mon, 22 May 2006 22:42:25 GMT</pubDate></item><item><title><![CDATA[Reply to ShellExecute im Dialog verwenden on Tue, 23 May 2006 05:51:12 GMT]]></title><description><![CDATA[<p>evil-peter schrieb:</p>
<blockquote>
<p>aber das Konsolenfenster zu verstecken geht eben scheinbar doch nur mit ShellExecute oder ShellExecuteEx!!</p>
</blockquote>
<p>ShellExecute verwendet intern CreateProcess, somit geht natürlich das verstecken des Consolen-Fensters auch mit CreateProcess (STARTF_USESHOWWINDOW mit SW_HIDE)</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1063202</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1063202</guid><dc:creator><![CDATA[Jochen Kalmbach]]></dc:creator><pubDate>Tue, 23 May 2006 05:51:12 GMT</pubDate></item><item><title><![CDATA[Reply to ShellExecute im Dialog verwenden on Tue, 23 May 2006 08:33:18 GMT]]></title><description><![CDATA[<p>OK, da bin ich leider nicht so bewandert. Ist es denn besser, dann gleich mit CreateProcess zu arbeiten? Oder ist das in dem Fall nicht so von Bedeutung bezogen auf das, was ich da machen will?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1063298</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1063298</guid><dc:creator><![CDATA[evil-peter]]></dc:creator><pubDate>Tue, 23 May 2006 08:33:18 GMT</pubDate></item><item><title><![CDATA[Reply to ShellExecute im Dialog verwenden on Tue, 23 May 2006 08:55:32 GMT]]></title><description><![CDATA[<p>Ich persönlich verwende bei EXE immer CreateProcess, da man hier dann direkt das Handle zurückbekommt. Die Doku zu ShellExecute ist mir da zu wage...</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1063313</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1063313</guid><dc:creator><![CDATA[Jochen Kalmbach]]></dc:creator><pubDate>Tue, 23 May 2006 08:55:32 GMT</pubDate></item><item><title><![CDATA[Reply to ShellExecute im Dialog verwenden on Tue, 23 May 2006 09:32:00 GMT]]></title><description><![CDATA[<p>Danke noch mal für die Hilfe</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1063349</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1063349</guid><dc:creator><![CDATA[evil-peter]]></dc:creator><pubDate>Tue, 23 May 2006 09:32:00 GMT</pubDate></item></channel></rss>