<?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[Verweis auf nicht aufgelöstes externes Symbol &amp;quot;_WinMain@16&amp;quot;]]></title><description><![CDATA[<p>Hallo <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>Wie kann ich die Funktion <em>int WINAPI WinMain(..)</em> in eine Klasse reinpacken?</p>
<p>Bei meinem Code:</p>
<pre><code class="language-cpp">#ifndef MAIN_H
#define MAIN_H

class Loader
{
private:
	HWND hWnd;
	WNDCLASS wc;
	MSG msg;
public:
	int WINAPI WinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance, LPSTR lpCmdLine, int nShowCmd);
};

#endif
</code></pre>
<pre><code class="language-cpp">#include &lt;windows.h&gt;
#include &quot;main.h&quot;
int WINAPI Loader::WinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance, LPSTR lpCmdLine, int nShowCmd)
{
	MessageBox(NULL, &quot;Hallo.&quot;, &quot;Titelleiste&quot;, MB_OK);
	return 0;
}
</code></pre>
<p>kommt immer so eine eigenartige Fehlermeldung raus:</p>
<pre><code>error LNK2019: Verweis auf nicht aufgelöstes externes Symbol &quot;_WinMain@16&quot; in Funktion &quot;___tmainCRTStartup&quot;.
</code></pre>
<p>Versteh ich irgendwie nicht <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f61e.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--disappointed_face"
      title=":("
      alt="😞"
    /></p>
]]></description><link>https://www.c-plusplus.net/forum/topic/201277/verweis-auf-nicht-aufgelöstes-externes-symbol-quot-_winmain-16-quot</link><generator>RSS for Node</generator><lastBuildDate>Thu, 06 Aug 2026 19:01:31 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/201277.rss" rel="self" type="application/rss+xml"/><pubDate>Thu, 27 Dec 2007 14:14:22 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to Verweis auf nicht aufgelöstes externes Symbol &amp;quot;_WinMain@16&amp;quot; on Thu, 27 Dec 2007 14:14:22 GMT]]></title><description><![CDATA[<p>Hallo <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>Wie kann ich die Funktion <em>int WINAPI WinMain(..)</em> in eine Klasse reinpacken?</p>
<p>Bei meinem Code:</p>
<pre><code class="language-cpp">#ifndef MAIN_H
#define MAIN_H

class Loader
{
private:
	HWND hWnd;
	WNDCLASS wc;
	MSG msg;
public:
	int WINAPI WinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance, LPSTR lpCmdLine, int nShowCmd);
};

#endif
</code></pre>
<pre><code class="language-cpp">#include &lt;windows.h&gt;
#include &quot;main.h&quot;
int WINAPI Loader::WinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance, LPSTR lpCmdLine, int nShowCmd)
{
	MessageBox(NULL, &quot;Hallo.&quot;, &quot;Titelleiste&quot;, MB_OK);
	return 0;
}
</code></pre>
<p>kommt immer so eine eigenartige Fehlermeldung raus:</p>
<pre><code>error LNK2019: Verweis auf nicht aufgelöstes externes Symbol &quot;_WinMain@16&quot; in Funktion &quot;___tmainCRTStartup&quot;.
</code></pre>
<p>Versteh ich irgendwie nicht <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f61e.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--disappointed_face"
      title=":("
      alt="😞"
    /></p>
]]></description><link>https://www.c-plusplus.net/forum/post/1426816</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1426816</guid><dc:creator><![CDATA[nAPIler]]></dc:creator><pubDate>Thu, 27 Dec 2007 14:14:22 GMT</pubDate></item><item><title><![CDATA[Reply to Verweis auf nicht aufgelöstes externes Symbol &amp;quot;_WinMain@16&amp;quot; on Thu, 27 Dec 2007 14:30:39 GMT]]></title><description><![CDATA[<p>Ganz einfach: Es gibt keine Funktion WinMain, sondern nur eine Funktion Loader::WinMain. Die haben miteinander nichts zu tun.</p>
<p>Der Einsprungpunkt muss eine freie Funktion sein, eine C-Signatur haben und (lt. Standard) main() oder main(int, char*[]) heissen, bei WinAPI-Anwendungen eben WinMain(...). Im Falle von main sorgt ein C++-Compiler automatisch für die C-Signatur, im Falle von WinMain weiss ich es nicht.</p>
<p>Fakt ist jedoch: Main in eine Klasse zu packen wird Dir nicht gelingen. Auch nicht als statische Funktion.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1426834</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1426834</guid><dc:creator><![CDATA[LordJaxom]]></dc:creator><pubDate>Thu, 27 Dec 2007 14:30:39 GMT</pubDate></item><item><title><![CDATA[Reply to Verweis auf nicht aufgelöstes externes Symbol &amp;quot;_WinMain@16&amp;quot; on Thu, 27 Dec 2007 14:53:54 GMT]]></title><description><![CDATA[<p>und die wndproc?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1426855</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1426855</guid><dc:creator><![CDATA[^^^^^^]]></dc:creator><pubDate>Thu, 27 Dec 2007 14:53:54 GMT</pubDate></item><item><title><![CDATA[Reply to Verweis auf nicht aufgelöstes externes Symbol &amp;quot;_WinMain@16&amp;quot; on Sun, 26 Aug 2012 17:35:16 GMT]]></title><description><![CDATA[<p>Vorweg:<br />
Die Main geht nicht in eine Klasse.<br />
Die WndProc hingegen schon, doch dies kann eine ziemliche Fuddelei werden.<br />
Ich habe es einmal über tausende Umwege hinbekommen und dann nur noch kopiert. <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="🙄"
    /></p>
]]></description><link>https://www.c-plusplus.net/forum/post/2245695</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2245695</guid><dc:creator><![CDATA[kinetize]]></dc:creator><pubDate>Sun, 26 Aug 2012 17:35:16 GMT</pubDate></item><item><title><![CDATA[Reply to Verweis auf nicht aufgelöstes externes Symbol &amp;quot;_WinMain@16&amp;quot; on Sun, 26 Aug 2012 18:20:47 GMT]]></title><description><![CDATA[<pre><code class="language-cpp">class window_t
{
    static LRESULT WINAPI window_proc( HWND window, UINT message, WPARAM wparam, LPARAM lparam );
}
</code></pre>
<p>!?</p>
<p>Evtl. <code>SetWindowLongPtr( handle, GWLP_USERDATA, reinterpret_cast&lt; LONG &gt;( this ) )</code> im Konstruktor und <code>window_t *windowptr = reinterpret_cast&lt; window_t* &gt;( GetWindowLongPtr( window, GWLP_USERDATA ) );</code> in der WNDPROC.</p>
<p>// edit: Im Allgemeinen empfiehlt es sich aber <a href="http://christopherhunt-software.blogspot.com/2011/09/application-developers-should-not-write.html" rel="nofollow">Anwendungen zu schreiben, keine Frameworks</a>.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2245708</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2245708</guid><dc:creator><![CDATA[Swordfish]]></dc:creator><pubDate>Sun, 26 Aug 2012 18:20:47 GMT</pubDate></item></channel></rss>