<?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[Nachrichtenfunktion in Klasse]]></title><description><![CDATA[<p>Beim Compilieren erhalte ich einen Fehler, aber warum verstehe ich nicht ganz. Hier mal der Source.</p>
<p>Die 2 Funktionen in der Klasse</p>
<pre><code class="language-cpp">void Engine::InitD3D(HINSTANCE &amp;hInstance)
{
	if(NULL == (pD3D = Direct3DCreate9(D3D_SDK_VERSION)))
	{
		throw Exception(&quot;CREATE DX9 INTERFACE FAILED&quot;);
	}
	DialogBox(hInstance,MAKEINTRESOURCE(IDD_SELECT),NULL,DlgProc);
}

BOOL CALLBACK Engine::DlgProc(HWND hWnd, UINT msg, WPARAM wParam, LPARAM lParam)
{
	switch(msg)
	{
		case WM_INITDIALOG:
		{

		}
		return TRUE;
	}
	return FALSE;
}
</code></pre>
<p>Der Aufruf</p>
<pre><code class="language-cpp">INT WINAPI WinMain(HINSTANCE hInstance, HINSTANCE hPrecInstance, PSTR szCmdLine, int iCmdShow)
{
	Engine eng;
	eng.InitD3D(hInstance);

[...]
</code></pre>
<p>Die Fehlermeldung</p>
<blockquote>
<p>g:\Entwicklung\VisualC++\DX9_1\engine.cpp(20): error C2664: 'DialogBoxParamA' : cannot convert parameter 4 from 'BOOL (HWND,UINT,WPARAM,LPARAM)' to 'DLGPROC'</p>
</blockquote>
<p>Was ist daran Falsch? Kann man sowas überhaupt in Klassen schreiben? Was gibt da evtl zu beachten?</p>
<p>PS: Ist es richtig das DialogBox in einer Art schleife läuft oder müßte ich denoch eine Nachrichten schleife mit bei InitD3D reinschreiben?</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/98224/nachrichtenfunktion-in-klasse</link><generator>RSS for Node</generator><lastBuildDate>Mon, 27 Apr 2026 15:21:26 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/98224.rss" rel="self" type="application/rss+xml"/><pubDate>Mon, 17 Jan 2005 21:14:30 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to Nachrichtenfunktion in Klasse on Mon, 17 Jan 2005 21:14:30 GMT]]></title><description><![CDATA[<p>Beim Compilieren erhalte ich einen Fehler, aber warum verstehe ich nicht ganz. Hier mal der Source.</p>
<p>Die 2 Funktionen in der Klasse</p>
<pre><code class="language-cpp">void Engine::InitD3D(HINSTANCE &amp;hInstance)
{
	if(NULL == (pD3D = Direct3DCreate9(D3D_SDK_VERSION)))
	{
		throw Exception(&quot;CREATE DX9 INTERFACE FAILED&quot;);
	}
	DialogBox(hInstance,MAKEINTRESOURCE(IDD_SELECT),NULL,DlgProc);
}

BOOL CALLBACK Engine::DlgProc(HWND hWnd, UINT msg, WPARAM wParam, LPARAM lParam)
{
	switch(msg)
	{
		case WM_INITDIALOG:
		{

		}
		return TRUE;
	}
	return FALSE;
}
</code></pre>
<p>Der Aufruf</p>
<pre><code class="language-cpp">INT WINAPI WinMain(HINSTANCE hInstance, HINSTANCE hPrecInstance, PSTR szCmdLine, int iCmdShow)
{
	Engine eng;
	eng.InitD3D(hInstance);

[...]
</code></pre>
<p>Die Fehlermeldung</p>
<blockquote>
<p>g:\Entwicklung\VisualC++\DX9_1\engine.cpp(20): error C2664: 'DialogBoxParamA' : cannot convert parameter 4 from 'BOOL (HWND,UINT,WPARAM,LPARAM)' to 'DLGPROC'</p>
</blockquote>
<p>Was ist daran Falsch? Kann man sowas überhaupt in Klassen schreiben? Was gibt da evtl zu beachten?</p>
<p>PS: Ist es richtig das DialogBox in einer Art schleife läuft oder müßte ich denoch eine Nachrichten schleife mit bei InitD3D reinschreiben?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/698943</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/698943</guid><dc:creator><![CDATA[VirtualDreams]]></dc:creator><pubDate>Mon, 17 Jan 2005 21:14:30 GMT</pubDate></item><item><title><![CDATA[Reply to Nachrichtenfunktion in Klasse on Mon, 17 Jan 2005 21:25:08 GMT]]></title><description><![CDATA[<p>Ist die DialogProc static?</p>
<p>Außerdem hat die DialogProc den Rückgabetyp INT_PTR.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/698955</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/698955</guid><dc:creator><![CDATA[INT_PTR]]></dc:creator><pubDate>Mon, 17 Jan 2005 21:25:08 GMT</pubDate></item><item><title><![CDATA[Reply to Nachrichtenfunktion in Klasse on Mon, 17 Jan 2005 21:25:20 GMT]]></title><description><![CDATA[<p>Schau mal in die FAQ <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/698956</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/698956</guid><dc:creator><![CDATA[flenders]]></dc:creator><pubDate>Mon, 17 Jan 2005 21:25:20 GMT</pubDate></item><item><title><![CDATA[Reply to Nachrichtenfunktion in Klasse on Mon, 17 Jan 2005 21:31:47 GMT]]></title><description><![CDATA[<p>Also mit dem Rückgabe wert INT_PTR hab ich es schon versucht, da kommt die selbe Fehlermeldung wie oben, nur statt BOOL ebend INT_PTR.</p>
<p>Wie ist das mit dem static zu verstehen? Die Dialogbox wird aus einer Resource erzeugt.<br />
<a class="plugin-mentions-user plugin-mentions-a" href="https://www.c-plusplus.net/forum/uid/1644">@flenders</a><br />
Unter was könnte ich da genau suchen? Also das stichwort mein ich.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/698967</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/698967</guid><dc:creator><![CDATA[VirtualDreams]]></dc:creator><pubDate>Mon, 17 Jan 2005 21:31:47 GMT</pubDate></item><item><title><![CDATA[Reply to Nachrichtenfunktion in Klasse on Mon, 17 Jan 2005 21:33:30 GMT]]></title><description><![CDATA[<p>Informier dich über das Schlüsselwort static. Und dannach benutzt du dieses bei der Memberfunktion Engine::DlgProc. <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/698971</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/698971</guid><dc:creator><![CDATA[;)]]></dc:creator><pubDate>Mon, 17 Jan 2005 21:33:30 GMT</pubDate></item><item><title><![CDATA[Reply to Nachrichtenfunktion in Klasse on Mon, 17 Jan 2005 21:36:55 GMT]]></title><description><![CDATA[<p>Ach das kann man auch bei Funktionen verwenden? Das hab ich bisher noch gar nicht gewußt <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="🙂"
    /> Ich dachte das geht nur bei Variablen...</p>
<p>Hey, super, es klappt einwandfrei <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="😃"
    /> Und wieder was dazugelernt.</p>
<p>THX@ALL</p>
]]></description><link>https://www.c-plusplus.net/forum/post/698975</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/698975</guid><dc:creator><![CDATA[VirtualDreams]]></dc:creator><pubDate>Mon, 17 Jan 2005 21:36:55 GMT</pubDate></item></channel></rss>