<?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[explorer]]></title><description><![CDATA[<p>Wennn ich mache:<br />
&quot;START&quot;-&gt;&quot;RUN&quot;-&gt;&quot;EXPLORER.exe&quot;<br />
Dann kreiert mir Windows einen Explorer, der unter dem Prozess &quot;explorer.exe&quot; läuft.<br />
Ich möchte dann den gestarteten Explorer wieder beenden (jedoch nicht den Prozess!!!). Den Prozess abschiessen wäre ja einfach, aber genau das will ich nicht.<br />
Wie mache ich das? Code?</p>
<p>Danke und Gruss</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/87191/explorer</link><generator>RSS for Node</generator><lastBuildDate>Sat, 18 Apr 2026 23:45:13 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/87191.rss" rel="self" type="application/rss+xml"/><pubDate>Mon, 27 Sep 2004 09:47:34 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to explorer on Mon, 27 Sep 2004 09:47:34 GMT]]></title><description><![CDATA[<p>Wennn ich mache:<br />
&quot;START&quot;-&gt;&quot;RUN&quot;-&gt;&quot;EXPLORER.exe&quot;<br />
Dann kreiert mir Windows einen Explorer, der unter dem Prozess &quot;explorer.exe&quot; läuft.<br />
Ich möchte dann den gestarteten Explorer wieder beenden (jedoch nicht den Prozess!!!). Den Prozess abschiessen wäre ja einfach, aber genau das will ich nicht.<br />
Wie mache ich das? Code?</p>
<p>Danke und Gruss</p>
]]></description><link>https://www.c-plusplus.net/forum/post/615729</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/615729</guid><dc:creator><![CDATA[rewe]]></dc:creator><pubDate>Mon, 27 Sep 2004 09:47:34 GMT</pubDate></item><item><title><![CDATA[Reply to explorer on Mon, 27 Sep 2004 09:58:55 GMT]]></title><description><![CDATA[<p>Evtl. hilft dir <a href="http://www.c-plusplus.net/forum/viewtopic.php?t=39369" rel="nofollow">das hier</a> - soll denn der Explorer auch von deinem Programm gestartet werden, oder willst du ihn nur damit wieder beenden?!</p>
]]></description><link>https://www.c-plusplus.net/forum/post/615738</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/615738</guid><dc:creator><![CDATA[flenders]]></dc:creator><pubDate>Mon, 27 Sep 2004 09:58:55 GMT</pubDate></item><item><title><![CDATA[Reply to explorer on Mon, 27 Sep 2004 13:11:41 GMT]]></title><description><![CDATA[<p>flenders schrieb:</p>
<blockquote>
<p>Evtl. hilft dir <a href="http://www.c-plusplus.net/forum/viewtopic.php?t=39369" rel="nofollow">das hier</a> - soll denn der Explorer auch von deinem Programm gestartet werden, oder willst du ihn nur damit wieder beenden?!</p>
</blockquote>
<p>Den Explorer möchte ich mit meinem Program starten (funktioniert bereits) und beenden.<br />
Der Link hilft mir wahrscheinlich weiter. Danke.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/615904</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/615904</guid><dc:creator><![CDATA[rewe]]></dc:creator><pubDate>Mon, 27 Sep 2004 13:11:41 GMT</pubDate></item><item><title><![CDATA[Reply to explorer on Wed, 29 Sep 2004 11:56:22 GMT]]></title><description><![CDATA[<p>Noch was:</p>
<p>Ich habe ein &quot;Window handle&quot; (hWnd Typ). Wie finde ich heraus, zu welchem Prozess dieses Window gehört???</p>
]]></description><link>https://www.c-plusplus.net/forum/post/616982</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/616982</guid><dc:creator><![CDATA[rewe]]></dc:creator><pubDate>Wed, 29 Sep 2004 11:56:22 GMT</pubDate></item><item><title><![CDATA[Reply to explorer on Wed, 29 Sep 2004 12:05:29 GMT]]></title><description><![CDATA[<p><a href="http://msdn.microsoft.com/library/en-us/winui/WinUI/WindowsUserInterface/Windowing/Windows/WindowReference/WindowFunctions/GetWindowThreadProcessId.asp" rel="nofollow">GetWindowThreadProcessId</a> <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/616989</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/616989</guid><dc:creator><![CDATA[flenders]]></dc:creator><pubDate>Wed, 29 Sep 2004 12:05:29 GMT</pubDate></item><item><title><![CDATA[Reply to explorer on Wed, 29 Sep 2004 12:19:11 GMT]]></title><description><![CDATA[<p>Danke.<br />
Genau sowas habe ich gesucht. <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f603.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--grinning_face_with_big_eyes"
      title=":D"
      alt="😃"
    /></p>
]]></description><link>https://www.c-plusplus.net/forum/post/617007</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/617007</guid><dc:creator><![CDATA[rewe]]></dc:creator><pubDate>Wed, 29 Sep 2004 12:19:11 GMT</pubDate></item><item><title><![CDATA[Reply to explorer on Wed, 29 Sep 2004 14:22:35 GMT]]></title><description><![CDATA[<p>Der umgekehrte Weg geht auch?</p>
<p>Wenn ich eine Prozess-ID habe und alle &quot;Window Handles&quot; des Prozesses haben möchte.<br />
Als Beispiel: Alle &quot;Window Handles&quot; vom Prozess &quot;explorer.exe&quot; herausfinden.<br />
Wie geht das??</p>
]]></description><link>https://www.c-plusplus.net/forum/post/617142</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/617142</guid><dc:creator><![CDATA[rewe]]></dc:creator><pubDate>Wed, 29 Sep 2004 14:22:35 GMT</pubDate></item><item><title><![CDATA[Reply to explorer on Wed, 29 Sep 2004 14:42:20 GMT]]></title><description><![CDATA[<p>Nein, das geht nicht so direkt. Dazu musst du einen kleinen Umweg machen und mit EnumWindows alle Fenster durchgehen und für jedes dann mit GetWindowThreadProcessId prüfen, ob es zum zu untersuchenden Prozess gehört <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/617167</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/617167</guid><dc:creator><![CDATA[flenders]]></dc:creator><pubDate>Wed, 29 Sep 2004 14:42:20 GMT</pubDate></item><item><title><![CDATA[Reply to explorer on Wed, 29 Sep 2004 18:47:44 GMT]]></title><description><![CDATA[<p>rewe schrieb:</p>
<blockquote>
<p>Wennn ich mache:<br />
&quot;START&quot;-&gt;&quot;RUN&quot;-&gt;&quot;EXPLORER.exe&quot;<br />
Dann kreiert mir Windows einen Explorer, der unter dem Prozess &quot;explorer.exe&quot; läuft.<br />
Ich möchte dann den gestarteten Explorer wieder beenden (jedoch nicht den Prozess!!!). Den Prozess abschiessen wäre ja einfach, aber genau das will ich nicht.<br />
Wie mache ich das? Code?</p>
<p>Danke und Gruss</p>
</blockquote>
<p>Nochmals zur Ursprungs-Frage zurück:</p>
<p>In einem der Links stand dieser Code (nur ein Ausschnitt):</p>
<pre><code>hEditor = FindWindow(NULL, &quot;Unbenannt - Editor&quot;); 
if(!hEditor) 
{ 
   MessageBox(hwnd, &quot;Fenster nicht gefunden&quot;, &quot;ERROR&quot;, MB_OK); 
   return; 
} 

GetWindowThreadProcessId(hEditor, &amp;pID); 
wTA = TerminateAppByWindowClosing(pID, 5000);
</code></pre>
<p>mit FindWindow wird das Notepad-Window gesucht und dann wird das Window mit WM_CLOSE geschlossen.<br />
Das funktioniert auch wunderbar.</p>
<p>Nun aber,...<br />
bei mir sieht der Code etwa so aus:</p>
<pre><code>HANDLE ProcessHandle = ::CreateProcess(&quot;explorer.exe&quot;,.........);
</code></pre>
<p>Nach dieser Zeile poppt ein neues Explorer-Fenster auf mit &quot;My Documents&quot; als Startpfad.<br />
Vielfach gibt es bereits mehr als 1 solches Explorer-Fenster.</p>
<p><strong>WIE</strong> kann ich nun exakt dieses Window das durch CreateProcess kreiert wurde, wieder finden???</p>
<p>Jetzt sind echte WinAPI-Spezialisten gefragt <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f603.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--grinning_face_with_big_eyes"
      title=":D"
      alt="😃"
    /></p>
]]></description><link>https://www.c-plusplus.net/forum/post/617416</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/617416</guid><dc:creator><![CDATA[rewe]]></dc:creator><pubDate>Wed, 29 Sep 2004 18:47:44 GMT</pubDate></item><item><title><![CDATA[Reply to explorer on Wed, 29 Sep 2004 19:24:36 GMT]]></title><description><![CDATA[<p>Lösungansatz:</p>
<p>Direkt nach CreateProcess() möchte ich mir ein Handle zum Explorer-Window beschaffen.<br />
Die einzigen Informationen die ich habe sind:<br />
- Es ist ein Explorer-Window<br />
- es ist das letzt kreierte Explorer-Window<br />
- ... vielleicht habe ich ja noch mehr Informationen, die ich gar nicht kenne.</p>
<p>Nun muss ich über alle Windows enumerieren, und dieses Window finden.<br />
Wie?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/617448</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/617448</guid><dc:creator><![CDATA[rewe]]></dc:creator><pubDate>Wed, 29 Sep 2004 19:24:36 GMT</pubDate></item><item><title><![CDATA[Reply to explorer on Wed, 29 Sep 2004 20:51:23 GMT]]></title><description><![CDATA[<p>Hat jemand schon eine Idee oder gar eine Lösung??</p>
]]></description><link>https://www.c-plusplus.net/forum/post/617506</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/617506</guid><dc:creator><![CDATA[rewe]]></dc:creator><pubDate>Wed, 29 Sep 2004 20:51:23 GMT</pubDate></item><item><title><![CDATA[Reply to explorer on Thu, 30 Sep 2004 09:26:59 GMT]]></title><description><![CDATA[<p>Ich habe doch bereits geschrieben, wie du vorgehen musst. Bei CreateProcess bekommst du über lpProcessInformation unter anderem die Prozess-ID. Wenn du jetzt mit EnumWindows die Fenster durchgehst musst du für jedes die ID gegen diese Prozess-ID checken.</p>
<p>Außerdem findest du doch im <a href="http://www.c-plusplus.net/forum/viewtopic.php?t=39369" rel="nofollow">FAQ-Beitrag</a> sogar schon entsprechenden Source-Code <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 />
Du brauchst nur TerminateAppByWindowClosing mit deiner Prozess-ID aufzurufen <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>
]]></description><link>https://www.c-plusplus.net/forum/post/617779</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/617779</guid><dc:creator><![CDATA[flenders]]></dc:creator><pubDate>Thu, 30 Sep 2004 09:26:59 GMT</pubDate></item><item><title><![CDATA[Reply to explorer on Thu, 30 Sep 2004 09:33:11 GMT]]></title><description><![CDATA[<p>flenders schrieb:</p>
<blockquote>
<p>Ich habe doch bereits geschrieben, wie du vorgehen musst. Bei CreateProcess bekommst du über lpProcessInformation unter anderem die Prozess-ID. Wenn du jetzt mit EnumWindows die Fenster durchgehst musst du für jedes die ID gegen diese Prozess-ID checken.</p>
<p>Außerdem findest du doch im <a href="http://www.c-plusplus.net/forum/viewtopic.php?t=39369" rel="nofollow">FAQ-Beitrag</a> sogar schon entsprechenden Source-Code <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 />
Du brauchst nur TerminateAppByWindowClosing mit deiner Prozess-ID aufzurufen <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>
</blockquote>
<p>Ne, das funktioniert eben nicht.<br />
Vielleicht habe ich mich ein wenig unglücklich ausgedrückt.<br />
Egal, ich kriege das selber irgendwie auf die Reihe <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>
]]></description><link>https://www.c-plusplus.net/forum/post/617788</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/617788</guid><dc:creator><![CDATA[rewe]]></dc:creator><pubDate>Thu, 30 Sep 2004 09:33:11 GMT</pubDate></item><item><title><![CDATA[Reply to explorer on Thu, 30 Sep 2004 17:38:25 GMT]]></title><description><![CDATA[<p>rewe schrieb:</p>
<blockquote>
<p>flenders schrieb:</p>
<blockquote>
<p>Ich habe doch bereits geschrieben, wie du vorgehen musst. Bei CreateProcess bekommst du über lpProcessInformation unter anderem die Prozess-ID. Wenn du jetzt mit EnumWindows die Fenster durchgehst musst du für jedes die ID gegen diese Prozess-ID checken.</p>
<p>Außerdem findest du doch im <a href="http://www.c-plusplus.net/forum/viewtopic.php?t=39369" rel="nofollow">FAQ-Beitrag</a> sogar schon entsprechenden Source-Code <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 />
Du brauchst nur TerminateAppByWindowClosing mit deiner Prozess-ID aufzurufen <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>
</blockquote>
<p>Ne, das funktioniert eben nicht.<br />
Vielleicht habe ich mich ein wenig unglücklich ausgedrückt.<br />
Egal, ich kriege das selber irgendwie auf die Reihe <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>
</blockquote>
<p>Ich probiere nochmals zu erklären:<br />
Ich stelle die Frage ganz simpel:<br />
Wie kann ich das Explorer-Window finden welches durch CreateProcess kreiert wurde????<br />
Aber Achtung: Meistens existieren bereits mehrere Explorer-Windows.<br />
Es hilft mir also nicht wenn ich alle Windows vom Explorer-Prozess bekomme (das ist einfach und hat bei mir auch funktioniert), ich brauche nur das Window-Handle von dem Window welches ICH kreiert habe.<br />
Any ideas?</p>
<p>PS: Betriebssystem ist W2K</p>
]]></description><link>https://www.c-plusplus.net/forum/post/618254</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/618254</guid><dc:creator><![CDATA[rewe]]></dc:creator><pubDate>Thu, 30 Sep 2004 17:38:25 GMT</pubDate></item><item><title><![CDATA[Reply to explorer on Thu, 30 Sep 2004 18:31:35 GMT]]></title><description><![CDATA[<p>Ich glaube die Lösung gefunden zu haben <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f603.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--grinning_face_with_big_eyes"
      title=":D"
      alt="😃"
    /> *hoff*<br />
Ich verwende einfach &quot;ShellExecuteEx&quot; anstatt &quot;CreateProcess&quot;.<br />
Damit sollte ich direkt ein HWND bekommen.<br />
Ich werde das ausprobieren.</p>
<p>Danke an alle die geantwortet haben!</p>
]]></description><link>https://www.c-plusplus.net/forum/post/618296</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/618296</guid><dc:creator><![CDATA[rewe]]></dc:creator><pubDate>Thu, 30 Sep 2004 18:31:35 GMT</pubDate></item></channel></rss>