<?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[CreateProcess() Problem]]></title><description><![CDATA[<p>Hallo.</p>
<p>Ich möchte per CreateProcess() eine Datei öffnen, die vom benutzer selber gewählt werden kann.</p>
<p>Eigentlich könnte ich das auch mit ShellExecute() machen, aber da ich die ID des neu geöffneten Fensters brauche, geht das damit net.</p>
<p>Im Moment habe ich folgendes bei mir Implementiert:</p>
<pre><code class="language-cpp">STARTUPINFO si;
    PROCESS_INFORMATION pi;
    memset(&amp;si,0,sizeof(STARTUPINFO));
    si.cb=sizeof(STARTUPINFO);
    si.dwFlags=STARTF_USESHOWWINDOW;
    si.wShowWindow=SW_SHOW; 
	int nLen = this-&gt;m_strFileName.GetLength();
	LPTSTR lpszBuf = this-&gt;m_strFileName.GetBuffer(nLen);

	if (! CreateProcess(NULL,lpszBuf,NULL,NULL,NULL,NULL,NULL,NULL,&amp;si,&amp;pi) )
	{
		MessageBox(&quot;Fehler beim erstellen!&quot;,NULL,MB_OK);

	}
	HANDLE hProc = OpenProcess(SYNCHRONIZE|PROCESS_TERMINATE, FALSE, pi.dwProcessId);
	this-&gt;m_strFileName.ReleaseBuffer();
</code></pre>
<p>Der 2. Parameter bei CreateProcess ist der Pfad der Datei, die der user ausgewählt hat.</p>
<p>Jetzt kommt aber immer die Fehlermeldung, dass er das net erstellen konnte.</p>
<p>Mache ich beim 2. Parameter aber ein Pfad zu einem Programm hin, funzt das wunderbar.</p>
<p>Ich habe schon versucht, den Pfad für diw Datei in den Parameter des &quot;Directory&quot; zu packen, aber dann fällt er mir ganz auf die Klappe.</p>
<p>Wie kann ich das denn nu machen?</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/154827/createprocess-problem</link><generator>RSS for Node</generator><lastBuildDate>Fri, 24 Jul 2026 22:09:24 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/154827.rss" rel="self" type="application/rss+xml"/><pubDate>Mon, 31 Jul 2006 09:36:50 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to CreateProcess() Problem on Mon, 31 Jul 2006 09:53:46 GMT]]></title><description><![CDATA[<p>Hallo.</p>
<p>Ich möchte per CreateProcess() eine Datei öffnen, die vom benutzer selber gewählt werden kann.</p>
<p>Eigentlich könnte ich das auch mit ShellExecute() machen, aber da ich die ID des neu geöffneten Fensters brauche, geht das damit net.</p>
<p>Im Moment habe ich folgendes bei mir Implementiert:</p>
<pre><code class="language-cpp">STARTUPINFO si;
    PROCESS_INFORMATION pi;
    memset(&amp;si,0,sizeof(STARTUPINFO));
    si.cb=sizeof(STARTUPINFO);
    si.dwFlags=STARTF_USESHOWWINDOW;
    si.wShowWindow=SW_SHOW; 
	int nLen = this-&gt;m_strFileName.GetLength();
	LPTSTR lpszBuf = this-&gt;m_strFileName.GetBuffer(nLen);

	if (! CreateProcess(NULL,lpszBuf,NULL,NULL,NULL,NULL,NULL,NULL,&amp;si,&amp;pi) )
	{
		MessageBox(&quot;Fehler beim erstellen!&quot;,NULL,MB_OK);

	}
	HANDLE hProc = OpenProcess(SYNCHRONIZE|PROCESS_TERMINATE, FALSE, pi.dwProcessId);
	this-&gt;m_strFileName.ReleaseBuffer();
</code></pre>
<p>Der 2. Parameter bei CreateProcess ist der Pfad der Datei, die der user ausgewählt hat.</p>
<p>Jetzt kommt aber immer die Fehlermeldung, dass er das net erstellen konnte.</p>
<p>Mache ich beim 2. Parameter aber ein Pfad zu einem Programm hin, funzt das wunderbar.</p>
<p>Ich habe schon versucht, den Pfad für diw Datei in den Parameter des &quot;Directory&quot; zu packen, aber dann fällt er mir ganz auf die Klappe.</p>
<p>Wie kann ich das denn nu machen?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1107583</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1107583</guid><dc:creator><![CDATA[MSS-Software]]></dc:creator><pubDate>Mon, 31 Jul 2006 09:53:46 GMT</pubDate></item><item><title><![CDATA[Reply to CreateProcess() Problem on Mon, 31 Jul 2006 12:10:02 GMT]]></title><description><![CDATA[<p>MSS-Software schrieb:</p>
<blockquote>
<p>Ich möchte per CreateProcess() eine Datei öffnen, die vom benutzer selber gewählt werden kann.</p>
</blockquote>
<p>was für Dateien möchtest du öffnen? Und vor allem wie? In deinem Prog? Mit der Standart-Anwendung?</p>
<p>schau mal hier: <a href="http://www.wer-weiss-was.de/theme9/article132601.html" rel="nofollow">http://www.wer-weiss-was.de/theme9/article132601.html</a></p>
]]></description><link>https://www.c-plusplus.net/forum/post/1107715</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1107715</guid><dc:creator><![CDATA[ESS_CB]]></dc:creator><pubDate>Mon, 31 Jul 2006 12:10:02 GMT</pubDate></item><item><title><![CDATA[Reply to CreateProcess() Problem on Mon, 31 Jul 2006 12:29:41 GMT]]></title><description><![CDATA[<p>ja, den Beitrag hab ich mir grad eben durchgelsen</p>
<p>problem ist aber, dass ich von dem Fenster, was sich neu öffnet, die Instanz brauche um mir dann davon den WindowText holen zu lassen</p>
<p>weiteres problem: mit CreateProcess würde das ja auch wunder funzen, aber das problem ist, dass ich bei CreateProcess eine Anwendung mit angeben muss.</p>
<p>da der user aber zwischen vielen verschiedenen dateien auswählen kann, weiß ich ja gar net, mit welchem prog er das öffnen soll</p>
<p>es muss doch irgendeine möglichkeit geben bei CreateProcess, die so ähnlich ist wie bei ShellExecute, dass ich nur den Pfad der Datei auswählen brauche und er automatisch das richtige Programm dafür nimmt...</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1107734</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1107734</guid><dc:creator><![CDATA[MSS-Software]]></dc:creator><pubDate>Mon, 31 Jul 2006 12:29:41 GMT</pubDate></item><item><title><![CDATA[Reply to CreateProcess() Problem on Mon, 31 Jul 2006 12:40:15 GMT]]></title><description><![CDATA[<p>deine sorgen haben ein Ende looool</p>
<p>die Funktion heißt system()</p>
<p>du übergibst ihr einfach deinen Dateinamen und er macht den Rest!</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1107743</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1107743</guid><dc:creator><![CDATA[ESS_CB]]></dc:creator><pubDate>Mon, 31 Jul 2006 12:40:15 GMT</pubDate></item><item><title><![CDATA[Reply to CreateProcess() Problem on Mon, 31 Jul 2006 12:50:18 GMT]]></title><description><![CDATA[<p>Warum willst Du den Pfad zur EXE nicht mit übergeben???</p>
<p>CreateProcess braucht entweder den vollständigen Pfad oder die EXE muss in der &quot;PATH&quot; Umgebungsvariable zu finden sein...</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1107748</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1107748</guid><dc:creator><![CDATA[Jochen Kalmbach]]></dc:creator><pubDate>Mon, 31 Jul 2006 12:50:18 GMT</pubDate></item><item><title><![CDATA[Reply to CreateProcess() Problem on Mon, 31 Jul 2006 12:57:08 GMT]]></title><description><![CDATA[<p>ehm, wie kann mam eigentlich auf die Umgebungsvariablen zugreifen? oder ist das einfach nur ein anderes Wort für Registry?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1107757</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1107757</guid><dc:creator><![CDATA[ESS_CB]]></dc:creator><pubDate>Mon, 31 Jul 2006 12:57:08 GMT</pubDate></item><item><title><![CDATA[Reply to CreateProcess() Problem on Mon, 31 Jul 2006 18:30:17 GMT]]></title><description><![CDATA[<p>Nein... rechtsklick auf &quot;Arbeitsplatz&quot; ... &quot;Erweitert&quot;-Tab... &quot;Umgebungsvariablen&quot; ...</p>
<p>Kannst die auch von deinem Programm heraus auslesen...</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1107964</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1107964</guid><dc:creator><![CDATA[*D*Evil]]></dc:creator><pubDate>Mon, 31 Jul 2006 18:30:17 GMT</pubDate></item><item><title><![CDATA[Reply to CreateProcess() Problem on Tue, 01 Aug 2006 05:25:26 GMT]]></title><description><![CDATA[<p>ESS_CB schrieb:</p>
<blockquote>
<p>ehm, wie kann mam eigentlich auf die Umgebungsvariablen zugreifen?</p>
</blockquote>
<p>- SetEnvironmentVariable<br />
- GetEnvironmentVariable</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1108147</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1108147</guid><dc:creator><![CDATA[Jochen Kalmbach]]></dc:creator><pubDate>Tue, 01 Aug 2006 05:25:26 GMT</pubDate></item><item><title><![CDATA[Reply to CreateProcess() Problem on Tue, 01 Aug 2006 11:54:55 GMT]]></title><description><![CDATA[<p>thyal</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1108436</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1108436</guid><dc:creator><![CDATA[ESS_CB]]></dc:creator><pubDate>Tue, 01 Aug 2006 11:54:55 GMT</pubDate></item></channel></rss>