<?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[Wie wird bei ShellExecute nShowCmd an die Zielanwendung übergeben?&#96;]]></title><description><![CDATA[<p>Hallo,</p>
<p>ich habe eine Frage zu ShellExecute und dem nShowCmd Parameter.</p>
<p>Wenn ich ein anderen Programm über ShellExecute starte und einen Parameter wie SW_SHOW oder SW_HIDE angebe - wie wird dieser an die Zielanwendung übermittelt?</p>
<p>Prinzipiell kann sich das doch nur auf eine Anwendung mit Fenstern beziehen? (ist in meinem Fall auch so)<br />
Wie entscheidet Windows dann, auf welches Fenster sich das Flag bezieht? Das erste erzeugte? Und wie wird das Flag dann an dieses Fenster übermittelt? Der normale Windows-Entrypoint nimmt solche Informationen ja schließlich nicht an. Edit: mein Fehler - tut er doch</p>
<p>Gibt's hierzu vielleicht ausführliche technische Doku? Die MSDN und die Suchfunktion hat mir nicht weitergeholfen. Vielleicht suche ich auch nach den falschen Wörtern?</p>
<p>Nur zur Info, es geht mir wirklich nur darum, dass ein anderes Win32-Executable mit dem Verb &quot;open&quot; geöffnet wird. Die ganzen anderen Fälle, die vielleicht eine gesonderte Behandlung haben, interessieren zumindest mich gerade nicht. <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><strong>Edit:</strong><br />
Ich denke ich hab's selbst rausgefunden. In der Doku zur Struktur STARTUPINFO in CreateProcess steht u.A. das hier:</p>
<blockquote>
<p>wShowWindow<br />
If dwFlags specifies STARTF_USESHOWWINDOW, this member can be any of the SW_ constants defined in Winuser.h. Otherwise, this member is ignored.<br />
For GUI processes, wShowWindow specifies the default value the first time ShowWindow is called. The nCmdShow parameter of ShowWindow is ignored. In subsequent calls to ShowWindow, the wShowWindow member is used if the nCmdShow parameter of ShowWindow is set to SW_SHOWDEFAULT.</p>
</blockquote>
<p>Ich vermute mal, dass ShellExecute es genauso macht bzw. intern CreateProcess verwendet.</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/227808/wie-wird-bei-shellexecute-nshowcmd-an-die-zielanwendung-übergeben</link><generator>RSS for Node</generator><lastBuildDate>Sat, 11 Apr 2026 03:01:56 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/227808.rss" rel="self" type="application/rss+xml"/><pubDate>Thu, 20 Nov 2008 09:24:09 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to Wie wird bei ShellExecute nShowCmd an die Zielanwendung übergeben?&#96; on Thu, 20 Nov 2008 10:11:00 GMT]]></title><description><![CDATA[<p>Hallo,</p>
<p>ich habe eine Frage zu ShellExecute und dem nShowCmd Parameter.</p>
<p>Wenn ich ein anderen Programm über ShellExecute starte und einen Parameter wie SW_SHOW oder SW_HIDE angebe - wie wird dieser an die Zielanwendung übermittelt?</p>
<p>Prinzipiell kann sich das doch nur auf eine Anwendung mit Fenstern beziehen? (ist in meinem Fall auch so)<br />
Wie entscheidet Windows dann, auf welches Fenster sich das Flag bezieht? Das erste erzeugte? Und wie wird das Flag dann an dieses Fenster übermittelt? Der normale Windows-Entrypoint nimmt solche Informationen ja schließlich nicht an. Edit: mein Fehler - tut er doch</p>
<p>Gibt's hierzu vielleicht ausführliche technische Doku? Die MSDN und die Suchfunktion hat mir nicht weitergeholfen. Vielleicht suche ich auch nach den falschen Wörtern?</p>
<p>Nur zur Info, es geht mir wirklich nur darum, dass ein anderes Win32-Executable mit dem Verb &quot;open&quot; geöffnet wird. Die ganzen anderen Fälle, die vielleicht eine gesonderte Behandlung haben, interessieren zumindest mich gerade nicht. <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><strong>Edit:</strong><br />
Ich denke ich hab's selbst rausgefunden. In der Doku zur Struktur STARTUPINFO in CreateProcess steht u.A. das hier:</p>
<blockquote>
<p>wShowWindow<br />
If dwFlags specifies STARTF_USESHOWWINDOW, this member can be any of the SW_ constants defined in Winuser.h. Otherwise, this member is ignored.<br />
For GUI processes, wShowWindow specifies the default value the first time ShowWindow is called. The nCmdShow parameter of ShowWindow is ignored. In subsequent calls to ShowWindow, the wShowWindow member is used if the nCmdShow parameter of ShowWindow is set to SW_SHOWDEFAULT.</p>
</blockquote>
<p>Ich vermute mal, dass ShellExecute es genauso macht bzw. intern CreateProcess verwendet.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1617555</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1617555</guid><dc:creator><![CDATA[7H3 N4C3R]]></dc:creator><pubDate>Thu, 20 Nov 2008 10:11:00 GMT</pubDate></item><item><title><![CDATA[Reply to Wie wird bei ShellExecute nShowCmd an die Zielanwendung übergeben?&#96; on Thu, 20 Nov 2008 15:02:00 GMT]]></title><description><![CDATA[<p>Der gestartete Process muss dies mit &quot;GetStartupInfo&quot; abfragen. Einige machen es, viele machen es nicht.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1617781</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1617781</guid><dc:creator><![CDATA[Jochen Kalmbach]]></dc:creator><pubDate>Thu, 20 Nov 2008 15:02:00 GMT</pubDate></item><item><title><![CDATA[Reply to Wie wird bei ShellExecute nShowCmd an die Zielanwendung übergeben?&#96; on Thu, 20 Nov 2008 16:33:52 GMT]]></title><description><![CDATA[<p>Aber nCmdShow Parameter wird doch &quot;kostenfrei&quot; an WinMain übergeben...</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1617835</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1617835</guid><dc:creator><![CDATA[Martin Richter]]></dc:creator><pubDate>Thu, 20 Nov 2008 16:33:52 GMT</pubDate></item><item><title><![CDATA[Reply to Wie wird bei ShellExecute nShowCmd an die Zielanwendung übergeben?&#96; on Thu, 20 Nov 2008 16:56:50 GMT]]></title><description><![CDATA[<p>Außerdem muss man das gar nicht abfragen, das erledigt ShowWindow automatisch</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1617848</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1617848</guid><dc:creator><![CDATA[sdg]]></dc:creator><pubDate>Thu, 20 Nov 2008 16:56:50 GMT</pubDate></item><item><title><![CDATA[Reply to Wie wird bei ShellExecute nShowCmd an die Zielanwendung übergeben?&#96; on Fri, 21 Nov 2008 06:59:24 GMT]]></title><description><![CDATA[<p>Ja, das hatte ich inzwischen auch alles rausgefunden. Trotzdem Danke für die Antworten. <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/1618095</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1618095</guid><dc:creator><![CDATA[7H3 N4C3R]]></dc:creator><pubDate>Fri, 21 Nov 2008 06:59:24 GMT</pubDate></item></channel></rss>