<?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[Erstellen und Aufrufen eines Threads aus einer MFC Anwendung heraus]]></title><description><![CDATA[<p>Hallo,</p>
<p>ich möchte in meiner MFC Applikation einen Thread aufrufen.<br />
Dieser Thread besitzt folgende Funktion:</p>
<pre><code class="language-cpp">DWORD WINAPI ThreadProc() 
{ 

	for(;;)
	{
		SOCKET AcceptSocket;
		AcceptSocket = SOCKET_ERROR;
		// Accept the connection.
		while( AcceptSocket == SOCKET_ERROR ) {

			AcceptSocket = accept( ListenSocket, NULL, NULL );
		}
		WSACleanup();
	}
	return 0;
}
</code></pre>
<p>Aufgerufen wird diese Threadfunktion folgendermaßen:</p>
<p>...</p>
<pre><code class="language-cpp">void CFireWallTestDlg::OnBnClickedStart()
{

HANDLE hThread;
		hThread = CreateThread(NULL, NULL, ThreadProc, NULL, 0, NULL);
}	

} //CFireWallTestDlg::OnBnClickedStart()
</code></pre>
<p>Folgenden Fehler erhalte ich beim Compilieren:<br />
**<br />
error C2664: 'CreateThread' : cannot convert parameter 3 from 'void (void)' to 'LPTHREAD_START_ROUTINE'<br />
None of the functions with this name in scope match the target type**</p>
<p>Die Compilersettings habe ich überprüft, sind korrekt.<br />
Eine Win32 Consolenanwendung / Projekt kommt mit diese Code klar.<br />
Daher liegt es sicher am MFC vermute ich. <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="😕"
    /></p>
<p>Kann mir jemand bitte sagen wie ich den Code anpassen muss, um diesen lauffähig zu machen?</p>
<p>Danke vielmals!!! <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/topic/157638/erstellen-und-aufrufen-eines-threads-aus-einer-mfc-anwendung-heraus</link><generator>RSS for Node</generator><lastBuildDate>Wed, 22 Jul 2026 11:48:53 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/157638.rss" rel="self" type="application/rss+xml"/><pubDate>Mon, 28 Aug 2006 08:44:07 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to Erstellen und Aufrufen eines Threads aus einer MFC Anwendung heraus on Mon, 28 Aug 2006 08:44:07 GMT]]></title><description><![CDATA[<p>Hallo,</p>
<p>ich möchte in meiner MFC Applikation einen Thread aufrufen.<br />
Dieser Thread besitzt folgende Funktion:</p>
<pre><code class="language-cpp">DWORD WINAPI ThreadProc() 
{ 

	for(;;)
	{
		SOCKET AcceptSocket;
		AcceptSocket = SOCKET_ERROR;
		// Accept the connection.
		while( AcceptSocket == SOCKET_ERROR ) {

			AcceptSocket = accept( ListenSocket, NULL, NULL );
		}
		WSACleanup();
	}
	return 0;
}
</code></pre>
<p>Aufgerufen wird diese Threadfunktion folgendermaßen:</p>
<p>...</p>
<pre><code class="language-cpp">void CFireWallTestDlg::OnBnClickedStart()
{

HANDLE hThread;
		hThread = CreateThread(NULL, NULL, ThreadProc, NULL, 0, NULL);
}	

} //CFireWallTestDlg::OnBnClickedStart()
</code></pre>
<p>Folgenden Fehler erhalte ich beim Compilieren:<br />
**<br />
error C2664: 'CreateThread' : cannot convert parameter 3 from 'void (void)' to 'LPTHREAD_START_ROUTINE'<br />
None of the functions with this name in scope match the target type**</p>
<p>Die Compilersettings habe ich überprüft, sind korrekt.<br />
Eine Win32 Consolenanwendung / Projekt kommt mit diese Code klar.<br />
Daher liegt es sicher am MFC vermute ich. <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="😕"
    /></p>
<p>Kann mir jemand bitte sagen wie ich den Code anpassen muss, um diesen lauffähig zu machen?</p>
<p>Danke vielmals!!! <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/1125927</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1125927</guid><dc:creator><![CDATA[Thread_Problem]]></dc:creator><pubDate>Mon, 28 Aug 2006 08:44:07 GMT</pubDate></item><item><title><![CDATA[Reply to Erstellen und Aufrufen eines Threads aus einer MFC Anwendung heraus on Mon, 28 Aug 2006 08:48:19 GMT]]></title><description><![CDATA[<p>Thread_Problem schrieb:</p>
<blockquote>
<p>Hallo,</p>
<p>ich möchte in meiner MFC Applikation einen Thread aufrufen.<br />
Dieser Thread besitzt folgende Funktion:</p>
<pre><code class="language-cpp">DWORD WINAPI ThreadProc() 
{ 

	for(;;)
	{
		SOCKET AcceptSocket;
		AcceptSocket = SOCKET_ERROR;
		// Accept the connection.
		while( AcceptSocket == SOCKET_ERROR ) {

			AcceptSocket = accept( ListenSocket, NULL, NULL );
		}
		WSACleanup();
	}
	return 0;
}
</code></pre>
<p>Aufgerufen wird diese Threadfunktion folgendermaßen:</p>
<p>...</p>
<pre><code class="language-cpp">void CFireWallTestDlg::OnBnClickedStart()
{

HANDLE hThread;
		hThread = CreateThread(NULL, NULL, ThreadProc, NULL, 0, NULL);
}	

} //CFireWallTestDlg::OnBnClickedStart()
</code></pre>
<p>Folgenden Fehler erhalte ich beim Compilieren:<br />
**<br />
error C2664: 'CreateThread' : cannot convert parameter 3 from 'void (void)' to 'LPTHREAD_START_ROUTINE'<br />
None of the functions with this name in scope match the target type**</p>
<p>Die Compilersettings habe ich überprüft, sind korrekt.<br />
Eine Win32 Consolenanwendung / Projekt kommt mit diese Code klar.<br />
Daher liegt es sicher am MFC vermute ich. <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="😕"
    /></p>
<p>Kann mir jemand bitte sagen wie ich den Code anpassen muss, um diesen lauffähig zu machen?</p>
<p>Danke vielmals!!! <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>
</blockquote>
<p><strong>Problem gelöst!!!</strong></p>
<p>[cpp]hThread = CreateThread(NULL, NULL, **(void)**ThreadProc, NULL, 0, NULL);[/cpp]</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1125931</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1125931</guid><dc:creator><![CDATA[Thread_Problem]]></dc:creator><pubDate>Mon, 28 Aug 2006 08:48:19 GMT</pubDate></item><item><title><![CDATA[Reply to Erstellen und Aufrufen eines Threads aus einer MFC Anwendung heraus on Mon, 28 Aug 2006 09:13:07 GMT]]></title><description><![CDATA[<p>Wenn Du gedenkst auch die CRT zu verwenden solltest Du CreateThread meiden und _beginthreadex verwenden. Andernfalls werden die threadlokalen CRT Daten beim Ende des Threads nicht freigegeben.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1125948</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1125948</guid><dc:creator><![CDATA[Martin Richter]]></dc:creator><pubDate>Mon, 28 Aug 2006 09:13:07 GMT</pubDate></item><item><title><![CDATA[Reply to Erstellen und Aufrufen eines Threads aus einer MFC Anwendung heraus on Mon, 28 Aug 2006 12:54:57 GMT]]></title><description><![CDATA[<p>Martin Richter schrieb:</p>
<blockquote>
<p>Wenn Du gedenkst auch die CRT zu verwenden solltest Du CreateThread meiden und _beginthreadex verwenden. Andernfalls werden die threadlokalen CRT Daten beim Ende des Threads nicht freigegeben.</p>
</blockquote>
<p>Was sind denn &quot;threadlokalen CRT Daten&quot; genau ? <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="😕"
    /></p>
]]></description><link>https://www.c-plusplus.net/forum/post/1126129</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1126129</guid><dc:creator><![CDATA[CodeFinder]]></dc:creator><pubDate>Mon, 28 Aug 2006 12:54:57 GMT</pubDate></item><item><title><![CDATA[Reply to Erstellen und Aufrufen eines Threads aus einer MFC Anwendung heraus on Mon, 28 Aug 2006 14:53:23 GMT]]></title><description><![CDATA[<p>ok die sache hat sich erledigt ein freund hats mir gesagt <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>
<p>Danke an euch <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f621.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--pouting_face"
      title=":rage:"
      alt="😡"
    /> <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="🙄"
    /> <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f621.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--pouting_face"
      title=":rage:"
      alt="😡"
    /> <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="🙄"
    /> <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f62e.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--face_with_open_mouth"
      title=":open_mouth:"
      alt="😮"
    /> <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f62e.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--face_with_open_mouth"
      title=":open_mouth:"
      alt="😮"
    /> <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f62e.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--face_with_open_mouth"
      title=":open_mouth:"
      alt="😮"
    /> <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f62e.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--face_with_open_mouth"
      title=":open_mouth:"
      alt="😮"
    /> <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f62e.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--face_with_open_mouth"
      title=":open_mouth:"
      alt="😮"
    /></p>
]]></description><link>https://www.c-plusplus.net/forum/post/1126211</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1126211</guid><dc:creator><![CDATA[Thread_Problem]]></dc:creator><pubDate>Mon, 28 Aug 2006 14:53:23 GMT</pubDate></item><item><title><![CDATA[Reply to Erstellen und Aufrufen eines Threads aus einer MFC Anwendung heraus on Mon, 28 Aug 2006 16:54:24 GMT]]></title><description><![CDATA[<p>CodeFinder schrieb:</p>
<blockquote>
<p>Martin Richter schrieb:</p>
<blockquote>
<p>Wenn Du gedenkst auch die CRT zu verwenden solltest Du CreateThread meiden und _beginthreadex verwenden. Andernfalls werden die threadlokalen CRT Daten beim Ende des Threads nicht freigegeben.</p>
</blockquote>
<p>Was sind denn &quot;threadlokalen CRT Daten&quot; genau ? <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="😕"
    /></p>
</blockquote>
<p>Die CRT hat je Thread einen Datenblock, der z.B. statische Puffer für strtok, time etc bereithält, auch Teile der locale gehören dazu. Wird also eine CRT Funktion in einem Thread aufgerufen die mit CreateThread angelegt wird, dann wird dieser Buffer angelegt. Aber ohne Aufruf der CRT Funktion endthread wird dieser nicht wieder freigegeben. Also besser _beginthreadex verwenden und einfach aus der Threadfunktion returnieren.</p>
<p>Siehe auch <a href="http://www.microsoft.com/msj/0799/Win32/Win320799.aspx" rel="nofollow">http://www.microsoft.com/msj/0799/Win32/Win320799.aspx</a></p>
]]></description><link>https://www.c-plusplus.net/forum/post/1126301</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1126301</guid><dc:creator><![CDATA[Martin Richter]]></dc:creator><pubDate>Mon, 28 Aug 2006 16:54:24 GMT</pubDate></item><item><title><![CDATA[Reply to Erstellen und Aufrufen eines Threads aus einer MFC Anwendung heraus on Mon, 28 Aug 2006 17:35:42 GMT]]></title><description><![CDATA[<p>Warum fragtest du dies eigentlich im WinAPI Teil dieses Forums und nicht im MFC Teil? Bei MFC verwendet man AfxBeginThread ...</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1126333</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1126333</guid><dc:creator><![CDATA[*D*Evil]]></dc:creator><pubDate>Mon, 28 Aug 2006 17:35:42 GMT</pubDate></item><item><title><![CDATA[Reply to Erstellen und Aufrufen eines Threads aus einer MFC Anwendung heraus on Mon, 28 Aug 2006 22:46:19 GMT]]></title><description><![CDATA[<p>Martin Richter schrieb:</p>
<blockquote>
<p>[...]<br />
Die CRT hat je Thread einen Datenblock, der z.B. statische Puffer für strtok, time etc bereithält, auch Teile der locale gehören dazu. Wird also eine CRT Funktion in einem Thread aufgerufen die mit CreateThread angelegt wird, dann wird dieser Buffer angelegt. Aber ohne Aufruf der CRT Funktion endthread wird dieser nicht wieder freigegeben. Also besser _beginthreadex verwenden und einfach aus der Threadfunktion returnieren.</p>
<p>Siehe auch <a href="http://www.microsoft.com/msj/0799/Win32/Win320799.aspx" rel="nofollow">http://www.microsoft.com/msj/0799/Win32/Win320799.aspx</a></p>
</blockquote>
<p>Jo dank dir <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f44d.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--thumbs_up"
      title=":+1:"
      alt="👍"
    /> ! ... geschekkt^^ <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f4a1.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--light_bulb"
      title=":bulb:"
      alt="💡"
    /></p>
]]></description><link>https://www.c-plusplus.net/forum/post/1126493</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1126493</guid><dc:creator><![CDATA[CodeFinder]]></dc:creator><pubDate>Mon, 28 Aug 2006 22:46:19 GMT</pubDate></item></channel></rss>