<?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[Problem mit Fenster erstellung innerhalb einer Klasse]]></title><description><![CDATA[<p>Hallo,</p>
<p>Ich will eine &quot;Fensterklasse&quot; erstellen. Wenn ich ErsteleWindow aufrufe,soll die Klasse ein Fenster erstellen das bestimmte Aufgaben erledigt. Das Problem ist ich bekomme folgenden Fehler:<br />
[Linker error] undefined reference to `file_offnen::hwnd'</p>
<pre><code class="language-cpp">#include &lt;windows.h&gt;

class file_offnen 
{
	public:
		static bool ErsteleWindow(HINSTANCE hThisInstance)
		{
			HWND hwnd;
			WNDCLASSEX wincl;
			wincl.hInstance = hThisInstance;
    		wincl.lpszClassName = &quot;xyz&quot;;
   			wincl.style = CS_DBLCLKS;                 /* Catch double-clicks */
   			wincl.cbSize = sizeof (WNDCLASSEX);

   			/* Use default icon and mouse-pointer */
   			wincl.hIcon = LoadIcon (NULL, IDI_APPLICATION);
   			wincl.hIconSm = LoadIcon (NULL, IDI_APPLICATION);
   			wincl.hCursor = LoadCursor (NULL, IDC_ARROW);
   			wincl.lpszMenuName = NULL;                 /* No menu */
   			wincl.cbClsExtra = 0;                      /* No extra bytes after the window class */
   			wincl.cbWndExtra = 0;                      /* structure or the window instance */
   			/* Use Windows's default color as the background of the window */
   			wincl.hbrBackground = (HBRUSH) GetSysColorBrush(COLOR_3DFACE);   			
   			wincl.lpfnWndProc = file_offnen::OpenWndProc;

      		if (!RegisterClassEx (&amp;wincl))
        		return 0;
      		hwnd = CreateWindowEx (0,&quot;xyz&quot;,&quot;Vokabel Learning&quot;,WS_OVERLAPPEDWINDOW,100,100,100,100,HWND_DESKTOP,NULL,hThisInstance,NULL);
           ShowWindow (hwnd, SW_SHOW);           	
		}
  		static char* GetFilename()
  		{
  		}
  		static void GetVok()
  		{
  		}  		
  		static LRESULT CALLBACK OpenWndProc (HWND hwnd, UINT message, WPARAM wParam, LPARAM lParam)
  		{
  			return DefWindowProc (hwnd, message, wParam, lParam);
  		}
};
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/topic/92212/problem-mit-fenster-erstellung-innerhalb-einer-klasse</link><generator>RSS for Node</generator><lastBuildDate>Fri, 24 Apr 2026 21:02:28 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/92212.rss" rel="self" type="application/rss+xml"/><pubDate>Tue, 16 Nov 2004 11:46:26 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to Problem mit Fenster erstellung innerhalb einer Klasse on Tue, 16 Nov 2004 11:46:26 GMT]]></title><description><![CDATA[<p>Hallo,</p>
<p>Ich will eine &quot;Fensterklasse&quot; erstellen. Wenn ich ErsteleWindow aufrufe,soll die Klasse ein Fenster erstellen das bestimmte Aufgaben erledigt. Das Problem ist ich bekomme folgenden Fehler:<br />
[Linker error] undefined reference to `file_offnen::hwnd'</p>
<pre><code class="language-cpp">#include &lt;windows.h&gt;

class file_offnen 
{
	public:
		static bool ErsteleWindow(HINSTANCE hThisInstance)
		{
			HWND hwnd;
			WNDCLASSEX wincl;
			wincl.hInstance = hThisInstance;
    		wincl.lpszClassName = &quot;xyz&quot;;
   			wincl.style = CS_DBLCLKS;                 /* Catch double-clicks */
   			wincl.cbSize = sizeof (WNDCLASSEX);

   			/* Use default icon and mouse-pointer */
   			wincl.hIcon = LoadIcon (NULL, IDI_APPLICATION);
   			wincl.hIconSm = LoadIcon (NULL, IDI_APPLICATION);
   			wincl.hCursor = LoadCursor (NULL, IDC_ARROW);
   			wincl.lpszMenuName = NULL;                 /* No menu */
   			wincl.cbClsExtra = 0;                      /* No extra bytes after the window class */
   			wincl.cbWndExtra = 0;                      /* structure or the window instance */
   			/* Use Windows's default color as the background of the window */
   			wincl.hbrBackground = (HBRUSH) GetSysColorBrush(COLOR_3DFACE);   			
   			wincl.lpfnWndProc = file_offnen::OpenWndProc;

      		if (!RegisterClassEx (&amp;wincl))
        		return 0;
      		hwnd = CreateWindowEx (0,&quot;xyz&quot;,&quot;Vokabel Learning&quot;,WS_OVERLAPPEDWINDOW,100,100,100,100,HWND_DESKTOP,NULL,hThisInstance,NULL);
           ShowWindow (hwnd, SW_SHOW);           	
		}
  		static char* GetFilename()
  		{
  		}
  		static void GetVok()
  		{
  		}  		
  		static LRESULT CALLBACK OpenWndProc (HWND hwnd, UINT message, WPARAM wParam, LPARAM lParam)
  		{
  			return DefWindowProc (hwnd, message, wParam, lParam);
  		}
};
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/653064</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/653064</guid><dc:creator><![CDATA[flammenvogel]]></dc:creator><pubDate>Tue, 16 Nov 2004 11:46:26 GMT</pubDate></item><item><title><![CDATA[Reply to Problem mit Fenster erstellung innerhalb einer Klasse on Tue, 16 Nov 2004 12:20:42 GMT]]></title><description><![CDATA[<p>Fehlt da nicht noch was? Oder ist das wirklich die vollständige Klasse?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/653092</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/653092</guid><dc:creator><![CDATA[ggggggg]]></dc:creator><pubDate>Tue, 16 Nov 2004 12:20:42 GMT</pubDate></item><item><title><![CDATA[Reply to Problem mit Fenster erstellung innerhalb einer Klasse on Tue, 16 Nov 2004 12:26:06 GMT]]></title><description><![CDATA[<p>Das ist eigentlich alles</p>
]]></description><link>https://www.c-plusplus.net/forum/post/653096</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/653096</guid><dc:creator><![CDATA[flammenvogel]]></dc:creator><pubDate>Tue, 16 Nov 2004 12:26:06 GMT</pubDate></item><item><title><![CDATA[Reply to Problem mit Fenster erstellung innerhalb einer Klasse on Tue, 16 Nov 2004 12:43:57 GMT]]></title><description><![CDATA[<p>kann irgendwie nicht sein.</p>
<p>Dein Code + main()-Funktion ergibt nämlich keinen Linkerfehler.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/653119</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/653119</guid><dc:creator><![CDATA[gggggggggggg]]></dc:creator><pubDate>Tue, 16 Nov 2004 12:43:57 GMT</pubDate></item><item><title><![CDATA[Reply to Problem mit Fenster erstellung innerhalb einer Klasse on Tue, 16 Nov 2004 12:55:41 GMT]]></title><description><![CDATA[<p>Ich benutze Dev-Cpp wenn dir das weiterhilft. Aber bei mir habe ich so einen Linker Fehler. Und das ist die Komplete Klasse beginnt mit class file_open { ... }; das ist alles.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/653134</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/653134</guid><dc:creator><![CDATA[flammenvogel]]></dc:creator><pubDate>Tue, 16 Nov 2004 12:55:41 GMT</pubDate></item><item><title><![CDATA[Reply to Problem mit Fenster erstellung innerhalb einer Klasse on Tue, 16 Nov 2004 12:59:56 GMT]]></title><description><![CDATA[<p>Gib am besten ein *minimales*, *compilierbares* Beispiel das den Linkerfehler zeigt. Dann kann dir auch geholfen werden.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/653137</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/653137</guid><dc:creator><![CDATA[helfer]]></dc:creator><pubDate>Tue, 16 Nov 2004 12:59:56 GMT</pubDate></item><item><title><![CDATA[Reply to Problem mit Fenster erstellung innerhalb einer Klasse on Tue, 16 Nov 2004 13:21:11 GMT]]></title><description><![CDATA[<p>Da ich denn Fehler komischerweise nicht in einem anderem Programm reproduzieren kann, poste ich jetzt einfach mal die vollständige WindowProcedure von dem aus die Klasse aufgerufen wird:</p>
<pre><code class="language-cpp">LRESULT CALLBACK WindowProcedure (HWND hwnd, UINT message, WPARAM wParam, LPARAM lParam)
{
	bool ok;
 	char eingabe[255];
  	char buf[10];
  	static char datei[] = &quot;Debugging Vokabeln&quot;;
 	static HBITMAP kasten1, kasten2, kasten3, kasten4;
 	static BITMAP bitmap1, bitmap2, bitmap3, bitmap4;
 	static VOKABEL_DATEN vok_daten[30];
 	static VOKABEL_STATS vok_stats;
 	static file_offnen filewnd;
  	PAINTSTRUCT ps ;
  	HDC hdc, hdcMem;
    switch (message)                  /* handle the messages */
    {
        case WM_DESTROY:
        	DeleteObject(kasten1);
            PostQuitMessage (0);       /* send a WM_QUIT to the message queue */
            break;
        case WM_CREATE:
        	//Intialiesierungen
        	static HINSTANCE hinstance = (HINSTANCE) GetWindowLong(hwnd,GWL_HINSTANCE);

       		CreateWindow(&quot;static&quot;, &quot;Latein:&quot;, WS_VISIBLE | WS_CHILD, 60,90,100,20, hwnd, NULL, hinstance, NULL);
       		CreateWindow(&quot;static&quot;, &quot;Deutsch:&quot;, WS_VISIBLE | WS_CHILD, 60,130,100,20, hwnd, NULL, hinstance, NULL);
       		CreateWindow(&quot;static&quot;, &quot;Zusätze:&quot;, WS_VISIBLE | WS_CHILD, 60,170,100,20, hwnd, NULL, hinstance, NULL);
       		CreateWindow(&quot;static&quot;, &quot;Datei:&quot;, WS_VISIBLE | WS_CHILD, 60,20,200,20, hwnd, (HMENU) TEXT_DATEI, hinstance, NULL);
       		//TODO: Mit CreateFont fette dicke Schriftart festsetzen
         	CreateWindow(&quot;static&quot;, &quot;&quot;, WS_VISIBLE | WS_CHILD, 400,100,200,20, hwnd, (HMENU) TEXT_RFZEIGER, hinstance, NULL);
       		CreateWindow(&quot;static&quot;, &quot;&quot;, WS_VISIBLE | WS_CHILD, 320,134,200,20, hwnd, (HMENU) TEXT_DEUTSCH, hinstance, NULL);
         	CreateWindow(&quot;edit&quot;, &quot;&quot;, WS_VISIBLE | WS_CHILD | WS_BORDER, 140,90,160,20, hwnd, (HMENU) EDIT_LATEIN, hinstance, NULL);
       		CreateWindow(&quot;edit&quot;, &quot;&quot;, WS_VISIBLE | WS_CHILD | WS_BORDER, 140,130,160,20, hwnd, (HMENU) EDIT_DEUTSCH, hinstance, NULL);
       		CreateWindow(&quot;edit&quot;, &quot;&quot;, WS_VISIBLE | WS_CHILD | WS_BORDER, 140,170,160,20, hwnd, (HMENU) EDIT_ZUSATZ, hinstance, NULL);
       		CreateWindow(&quot;button&quot;, &quot;Weiter&quot;, WS_VISIBLE | WS_CHILD, 220,210,100,30, hwnd, (HMENU) BU_WEITER, hinstance, NULL);
       		CreateWindow(&quot;button&quot;, &quot;Lösung&quot;, WS_VISIBLE | WS_CHILD, 100,210,100,30, hwnd, (HMENU) BU_LOSUNG, hinstance, NULL);

       		EnumChildWindows(hwnd, EnumChildProc, 0);
         	kasten1 = (HBITMAP) LoadImage (GetModuleHandle (NULL), &quot;kasten1.bmp&quot;,IMAGE_BITMAP,0, 0,LR_DEFAULTCOLOR | LR_LOADFROMFILE);
            kasten2 = (HBITMAP) LoadImage (GetModuleHandle (NULL), &quot;kasten2.bmp&quot;,IMAGE_BITMAP,0, 0,LR_DEFAULTCOLOR | LR_LOADFROMFILE);
            kasten3 = (HBITMAP) LoadImage (GetModuleHandle (NULL), &quot;kasten3.bmp&quot;,IMAGE_BITMAP,0, 0,LR_DEFAULTCOLOR | LR_LOADFROMFILE);
            kasten4 = (HBITMAP) LoadImage (GetModuleHandle (NULL), &quot;kasten4.bmp&quot;,IMAGE_BITMAP,0, 0,LR_DEFAULTCOLOR | LR_LOADFROMFILE);
            GetObject (kasten1, sizeof (BITMAP), &amp;bitmap1);
            GetObject (kasten2, sizeof (BITMAP), &amp;bitmap2);
            GetObject (kasten3, sizeof (BITMAP), &amp;bitmap3);
            GetObject (kasten4, sizeof (BITMAP), &amp;bitmap4);
            break;     		
  		case WM_COMMAND:
  			switch(LOWORD(wParam))
  			{
				case BU_WEITER:
					GetDlgItemText(hwnd, EDIT_DEUTSCH, eingabe, 255);
					ok = Uberprufen(vok_daten[i_aktvok].heimatsprache,eingabe);
					FachSetzen(ok, &amp;vok_daten[i_aktvok], &amp;vok_stats);
    				if(ok)
        			{
        				//TODO: Mit CreateFont fette dicke Schriftart festsetzen
        				SetDlgItemText(hwnd, TEXT_RFZEIGER, &quot;RICHTIG&quot;);
        				SetDlgItemText(hwnd, TEXT_DEUTSCH, &quot;&quot;);
           			}
              		else
                	{
                		//TODO: Mit CreateFont fette dicke Schriftart festsetzen
                   		SetDlgItemText(hwnd, TEXT_RFZEIGER, &quot;FALSCH&quot;);
                   		SetDlgItemText(hwnd, TEXT_DEUTSCH, vok_daten[i_aktvok].heimatsprache);
               		}
               		if(vok_stats.gesamt == vok_stats.fach4)
               		{
               			MessageBox(0, &quot;Sie haben die komplete Lektion geübt!&quot;, &quot;FERTIG!&quot;, 0);               			
               		}
                 	NachsteVokabel(vok_daten, &amp;vok_stats);
                  	SetDlgItemText(hwnd, EDIT_LATEIN, vok_daten[i_aktvok].fremdsprache);
                   	SetDlgItemText(hwnd, EDIT_DEUTSCH, &quot;&quot;);
                    InvalidateRect(hwnd,NULL,false);		  			        			    		
					break;
				case BU_LOSUNG:
					MessageBox(0, &quot;Lösung&quot;, 0,0); 
					break;
				case MENU_OFFNEN:
					filewnd.ErsteleWindow(hinstance);
					InitVokStruct(vok_daten, &amp;vok_stats);
					SetDlgItemText(hwnd, EDIT_LATEIN, vok_daten[i_aktvok].fremdsprache); 
					InvalidateRect(hwnd,NULL,false);
					sprintf(buf, &quot;Datei: %s&quot;, datei);
     				SetDlgItemText(hwnd, TEXT_DATEI, buf);					
					break;
				case MENU_SPEICHERN:
					MessageBox(0, &quot;Speichern&quot;,0,0);
					break;
				case MENU_DRUCKEN:
					MessageBox(0,&quot;Drucken&quot;,0,0);
					break;
        	}
    	case WM_PAINT:
    		hdc = BeginPaint(hwnd, &amp;ps) ;
			hdcMem = CreateCompatibleDC(hdc) ;
			SelectObject(hdcMem, kasten1) ;
			BitBlt(hdc, 100, 250, bitmap1.bmWidth, bitmap1.bmHeight,hdcMem, 0, 0, SRCCOPY);
			SelectObject(hdcMem, kasten2) ;
			BitBlt(hdc, 200, 250, bitmap2.bmWidth, bitmap2.bmHeight,hdcMem, 0, 0, SRCCOPY);
			SelectObject(hdcMem, kasten3) ;
			BitBlt(hdc, 300, 250, bitmap3.bmWidth, bitmap3.bmHeight,hdcMem, 0, 0, SRCCOPY);
			SelectObject(hdcMem, kasten4) ;
			BitBlt(hdc, 400, 250, bitmap4.bmWidth, bitmap4.bmHeight,hdcMem, 0, 0, SRCCOPY);
			DeleteDC(hdcMem);
			sprintf(buf,&quot;%i&quot;, vok_stats.fach1);
			TextOut(hdc, 125, 277, buf, strlen(buf));
			sprintf(buf,&quot;%i&quot;, vok_stats.fach2);
			TextOut(hdc, 225, 277, buf, strlen(buf));
			sprintf(buf,&quot;%i&quot;, vok_stats.fach3);
			TextOut(hdc, 325, 277, buf, strlen(buf));
			sprintf(buf,&quot;%i&quot;, vok_stats.fach4);
			TextOut(hdc, 425, 277, buf, strlen(buf));
			EndPaint(hwnd, &amp;ps);        
			return 0 ; 
        default:                      /* for messages that we don't deal with */
            return DefWindowProc (hwnd, message, wParam, lParam);
    }
    return 0;
}
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/653158</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/653158</guid><dc:creator><![CDATA[flammenvogel]]></dc:creator><pubDate>Tue, 16 Nov 2004 13:21:11 GMT</pubDate></item><item><title><![CDATA[Reply to Problem mit Fenster erstellung innerhalb einer Klasse on Tue, 16 Nov 2004 13:23:33 GMT]]></title><description><![CDATA[<p>Tja, dann werden wir dir auch nicht helfen können. <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f921.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--clown_face"
      title=":clown:"
      alt="🤡"
    /></p>
]]></description><link>https://www.c-plusplus.net/forum/post/653160</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/653160</guid><dc:creator><![CDATA[hihi]]></dc:creator><pubDate>Tue, 16 Nov 2004 13:23:33 GMT</pubDate></item><item><title><![CDATA[Reply to Problem mit Fenster erstellung innerhalb einer Klasse on Tue, 16 Nov 2004 13:37:04 GMT]]></title><description><![CDATA[<p>In der WindowProcedure oben trit der Fehler auf! Ich habe ein zweites Programm geschrieben, in dem Funktioniert es. Ist in der WindowProcedure oben auch kein Fehler?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/653178</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/653178</guid><dc:creator><![CDATA[flammenvogel]]></dc:creator><pubDate>Tue, 16 Nov 2004 13:37:04 GMT</pubDate></item><item><title><![CDATA[Reply to Problem mit Fenster erstellung innerhalb einer Klasse on Tue, 16 Nov 2004 16:29:08 GMT]]></title><description><![CDATA[<p>Tritt er jetzt in WindowProcedure oder in der ganz oben geposteten Klasse auf <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/653415</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/653415</guid><dc:creator><![CDATA[flenders]]></dc:creator><pubDate>Tue, 16 Nov 2004 16:29:08 GMT</pubDate></item><item><title><![CDATA[Reply to Problem mit Fenster erstellung innerhalb einer Klasse on Tue, 16 Nov 2004 16:36:34 GMT]]></title><description><![CDATA[<p>flammenvogel schrieb:</p>
<blockquote>
<p>[Linker error] undefined reference to `file_offnen::hwnd'</p>
</blockquote>
<p>in deiner klasse file_offnen fehlt das attribute &quot;hwnd&quot;, allerdings sieht man nicht wo du darauf zurückgreifst <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/653425</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/653425</guid><dc:creator><![CDATA[miller_m]]></dc:creator><pubDate>Tue, 16 Nov 2004 16:36:34 GMT</pubDate></item><item><title><![CDATA[Reply to Problem mit Fenster erstellung innerhalb einer Klasse on Tue, 16 Nov 2004 16:44:16 GMT]]></title><description><![CDATA[<p>Dann stell dein ganzes Projekt online. Dann haben wir den Fehler ruck zuck gefunden.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/653436</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/653436</guid><dc:creator><![CDATA[kein Ratefuchs]]></dc:creator><pubDate>Tue, 16 Nov 2004 16:44:16 GMT</pubDate></item><item><title><![CDATA[Reply to Problem mit Fenster erstellung innerhalb einer Klasse on Tue, 16 Nov 2004 17:27:44 GMT]]></title><description><![CDATA[<p>Nochmal für flenders:</p>
<p>So wie es aussieht kriege ich in genau dem Programm zu dem auch die WindowProcedure gehört ein Fehler auf, wenn ich die Klasse benutze. Das komische ist das der Linkerfehler auf die Klasse verweißt, sich die Klasse aber in einem anderem Programm ohne Fehler benutzten lässt. Also muss der Fehler folglich in der WindowProcedure oder in einem anderem Teil des Programms bei dem es nicht funktioniert auftreten. Ich habe jetzt erstmal nur die WindowProcedure gepostet, da dort die Klasse aufgerufen wird.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/653466</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/653466</guid><dc:creator><![CDATA[flammenvogel]]></dc:creator><pubDate>Tue, 16 Nov 2004 17:27:44 GMT</pubDate></item><item><title><![CDATA[Reply to Problem mit Fenster erstellung innerhalb einer Klasse on Tue, 16 Nov 2004 17:32:45 GMT]]></title><description><![CDATA[<p>Ich poste jetzt nochmal zusätzlich die WinMain und die globalen Deklerationen:</p>
<pre><code class="language-cpp">#include &lt;windows.h&gt;
#include &lt;eigene/fablib.h&gt;
#include &lt;time.h&gt;
#include &lt;deque&gt;
#include &quot;offnen.h&quot;

using namespace std;

#define EDIT_ZUSATZ 1
#define EDIT_DEUTSCH 2
#define EDIT_LATEIN 3
#define BU_LOSUNG 4
#define BU_WEITER 5
#define MENU_OFFNEN 6
#define MENU_SPEICHERN 7
#define MENU_DRUCKEN 8
#define TEXT_DATEI 9
#define TEXT_RFZEIGER 10
#define TEXT_DEUTSCH 11

#define BREITE 544
#define HOHE 375

//Initialiesierungen - Datentypen
struct VOKABEL_DATEN {
	int fach;
 	char fremdsprache[255];
  	char heimatsprache[255];
    char bemmerkungen[255];
};

struct VOKABEL_STATS {
	int gesamt;
	int fach1;
	int fach2;
	int fach3;
	int fach4;
};

//Initialiesierungen - globale Variabeln
int i_aktvok = 0;

//Initialiesierungen - Funktionen
BOOL CALLBACK EnumChildProc(HWND hwnd, LPARAM lParam);
LRESULT CALLBACK WindowProcedure (HWND, UINT, WPARAM, LPARAM);
bool Uberprufen(char*, char*);
int FachSetzen(bool ok, VOKABEL_DATEN* vok, VOKABEL_STATS* stats);
void InitVokStruct(VOKABEL_DATEN* voks, VOKABEL_STATS* stats);
void NachsteVokabel(VOKABEL_DATEN* voks, VOKABEL_STATS* stats);
bool OpenVocFile(char* pfad,VOKABEL_DATEN* voks, VOKABEL_STATS* stats);

int WINAPI WinMain (HINSTANCE hThisInstance,
                    HINSTANCE hPrevInstance,
                    LPSTR lpszArgument,
                    int nFunsterStil)

{
	HMENU hmenu = CreateMenu();	
    HWND hwnd;               /* This is the handle for our window */
    MSG messages;            /* Here messages to the application are saved */
    WNDCLASSEX wincl;        /* Data structure for the windowclass */
    time_t t;
    int xpos, ypos;

    fablib::GetCenterCordinats(BREITE, HOHE, &amp;xpos, &amp;ypos);

    fablib::DefaultWindowClass(&amp;wincl, hThisInstance);
    wincl.lpfnWndProc = WindowProcedure;      /* This function is called by windows */

    AppendMenu(hmenu, MF_STRING,MENU_OFFNEN,&quot;&amp;Öffnen&quot;);
    AppendMenu(hmenu, MF_STRING,MENU_SPEICHERN,&quot;&amp;Speichern&quot;);
    AppendMenu(hmenu, MF_STRING,MENU_DRUCKEN,&quot;Wörterliste mit falschen Vokabeln &amp;drucken&quot;);

    srand((unsigned) time(&amp;t));

     /* Register the window class, and if it fails quit the program */
    if (!RegisterClassEx (&amp;wincl))
        return 0;

    hwnd = CreateWindowEx (
           0,                   /* Extended possibilites for variation */
           &quot;default&quot;,         /* Classname */
           &quot;Vokabel Learning&quot;,       /* Title Text */
           WS_OVERLAPPEDWINDOW, /* default window */
           xpos,       /* Windows decides the position */
           ypos,       /* where the window ends up on the screen */
           BREITE,                 /* The programs width */
           HOHE,                 /* and height in pixels */
           HWND_DESKTOP,        /* The window is a child-window to desktop */
           hmenu,                /* No menu */
           hThisInstance,       /* Program Instance handler */
           NULL                 /* No Window Creation data */
           );

    ShowWindow (hwnd, nFunsterStil);

    while (GetMessage (&amp;messages, NULL, 0, 0))
    {
        TranslateMessage(&amp;messages);
        DispatchMessage(&amp;messages);
    }
    return messages.wParam;
}
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/653471</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/653471</guid><dc:creator><![CDATA[flammenvogel]]></dc:creator><pubDate>Tue, 16 Nov 2004 17:32:45 GMT</pubDate></item><item><title><![CDATA[Reply to Problem mit Fenster erstellung innerhalb einer Klasse on Tue, 16 Nov 2004 18:15:58 GMT]]></title><description><![CDATA[<p>Das nützt doch alles nichts. Der Fehler liegt woanders.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/653497</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/653497</guid><dc:creator><![CDATA[bluuuuuub]]></dc:creator><pubDate>Tue, 16 Nov 2004 18:15:58 GMT</pubDate></item><item><title><![CDATA[Reply to Problem mit Fenster erstellung innerhalb einer Klasse on Tue, 16 Nov 2004 18:17:10 GMT]]></title><description><![CDATA[<p>lade doch bitte das ganze projekt hoch auf webspace</p>
]]></description><link>https://www.c-plusplus.net/forum/post/653498</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/653498</guid><dc:creator><![CDATA[bluuuuuub]]></dc:creator><pubDate>Tue, 16 Nov 2004 18:17:10 GMT</pubDate></item><item><title><![CDATA[Reply to Problem mit Fenster erstellung innerhalb einer Klasse on Thu, 18 Nov 2004 16:02:05 GMT]]></title><description><![CDATA[<p>Ich hasse Dev-Cpp, der Fehler liegt nirgendwo Dev-Cpp hatte mal wieder Halzuzinationen. Nach ner Weile warten und ein paar mal auf alles neu erstellen drücken gings.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/654605</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/654605</guid><dc:creator><![CDATA[flammenvogel]]></dc:creator><pubDate>Thu, 18 Nov 2004 16:02:05 GMT</pubDate></item><item><title><![CDATA[Reply to Problem mit Fenster erstellung innerhalb einer Klasse on Thu, 18 Nov 2004 19:36:31 GMT]]></title><description><![CDATA[<p>jep, ich kann dir zustimmen!<br />
ist mir schon mehrmals passiert, dass mein programm während dem starten plötzlich abstürzte.<br />
nach &quot;Alles erneuern&quot; gings dann plötzlich.. naja.. (hab ja auch ne beta 4.9.9.0)</p>
]]></description><link>https://www.c-plusplus.net/forum/post/654836</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/654836</guid><dc:creator><![CDATA[nate7]]></dc:creator><pubDate>Thu, 18 Nov 2004 19:36:31 GMT</pubDate></item><item><title><![CDATA[Reply to Problem mit Fenster erstellung innerhalb einer Klasse on Thu, 18 Nov 2004 19:38:44 GMT]]></title><description><![CDATA[<p>vielleicht ist es auch ein fehler in *deinem* programm, der zufällig auftritt.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/654839</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/654839</guid><dc:creator><![CDATA[hepy]]></dc:creator><pubDate>Thu, 18 Nov 2004 19:38:44 GMT</pubDate></item><item><title><![CDATA[Reply to Problem mit Fenster erstellung innerhalb einer Klasse on Thu, 18 Nov 2004 20:07:32 GMT]]></title><description><![CDATA[<p>1. es gibt keinen zufall (zumindest nicht bei software)</p>
<p>2. &quot;mein&quot; programm ist &quot;meins&quot;: <a href="http://www.path-finder.ch.tt" rel="nofollow">www.path-finder.ch.tt</a></p>
<p>3. trotzdem vielen herzlichen dank für dein posting</p>
]]></description><link>https://www.c-plusplus.net/forum/post/654859</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/654859</guid><dc:creator><![CDATA[nate7]]></dc:creator><pubDate>Thu, 18 Nov 2004 20:07:32 GMT</pubDate></item><item><title><![CDATA[Reply to Problem mit Fenster erstellung innerhalb einer Klasse on Thu, 18 Nov 2004 20:10:34 GMT]]></title><description><![CDATA[<p>im speicher stehen zufällige werte solange er nicht initialisiert ist. und dann kann das abstürzen wenn du glück hast, oder wenn du pech hast merkst du den fehler nie.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/654861</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/654861</guid><dc:creator><![CDATA[......]]></dc:creator><pubDate>Thu, 18 Nov 2004 20:10:34 GMT</pubDate></item><item><title><![CDATA[Reply to Problem mit Fenster erstellung innerhalb einer Klasse on Thu, 18 Nov 2004 21:07:30 GMT]]></title><description><![CDATA[<p>...... schrieb:</p>
<blockquote>
<p>im speicher stehen zufällige werte solange er nicht initialisiert ist. und dann kann das abstürzen wenn du glück hast, oder wenn du pech hast merkst du den fehler nie.</p>
</blockquote>
<p>was ist den das für ein blödsinn.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/654908</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/654908</guid><dc:creator><![CDATA[miller_m]]></dc:creator><pubDate>Thu, 18 Nov 2004 21:07:30 GMT</pubDate></item><item><title><![CDATA[Reply to Problem mit Fenster erstellung innerhalb einer Klasse on Thu, 18 Nov 2004 21:21:16 GMT]]></title><description><![CDATA[<p>erkenne den blödsinn nicht. sorry</p>
]]></description><link>https://www.c-plusplus.net/forum/post/654914</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/654914</guid><dc:creator><![CDATA[.......]]></dc:creator><pubDate>Thu, 18 Nov 2004 21:21:16 GMT</pubDate></item><item><title><![CDATA[Reply to Problem mit Fenster erstellung innerhalb einer Klasse on Thu, 18 Nov 2004 21:22:41 GMT]]></title><description><![CDATA[<p>was hat dieses mit dev-cpp und einem absturz von selbigem zu tun. <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/654916</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/654916</guid><dc:creator><![CDATA[miller_m]]></dc:creator><pubDate>Thu, 18 Nov 2004 21:22:41 GMT</pubDate></item><item><title><![CDATA[Reply to Problem mit Fenster erstellung innerhalb einer Klasse on Thu, 18 Nov 2004 21:43:54 GMT]]></title><description><![CDATA[<p>er hat geschrieben das sein programm abgestürzt ist und nicht dev-cpp.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/654933</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/654933</guid><dc:creator><![CDATA[......]]></dc:creator><pubDate>Thu, 18 Nov 2004 21:43:54 GMT</pubDate></item></channel></rss>