Hauptfensterklasse wird nicht registriert, warum???
-
9taleFox schrieb:
Hallo,
ich habe mir das Tutorial zum erzeugen eines Fensters angeschaut und umgesetzt. Auf meinem Laptop funktionier es wunderbar auf meinem Rechner gibt es aber ein Problem, die Hauptfensterklasse wird nicht registriert und ich habe keine Ahnung wieso, dh. habe keine brauchbare Informationen dazu finden können woran das liegt.
Kennt einer hier die Lösung zu diesem Problem???Danke im Voraus!
Lass Dir mal, nachdem der Aufruf fehlgeschlagen ist, den Fehlercode mittels
GetLastError() ausgeben. Welchen Code erhältst Du da ?Gruß,
Matthias.
-
Also an der Bezeichnung der Klasse liegt es nicht (habe andere ausprobiert) und GetLastError() gibt mir als Errorcode die 120 (ERROR_CALL_NOT_IMPLEMENTED) zurück also “This function is not supported on this system.“. Das System auf dem Rechner ist WinME.
-
Ich glaube eine Lösung gefunden zu haben, ich muss schauen ob zur Registrierung der Klasse RegisterClassA oder RegisterClassW verwendet werden muss, also je nach dem ob das System Unocode unterstützt oder nicht.
Danke für die Hilfe
-
Ich habe nun alle Klassen und RegisterClass...() Methoden durchprobiert und es funktioniert immer noch nicht
, weiß einer Rat!?
Bin für jeden Tipp dankbar!
-
9taleFox schrieb:
Ich glaube eine Lösung gefunden zu haben, ich muss schauen ob zur Registrierung der Klasse RegisterClassA oder RegisterClassW verwendet werden muss, also je nach dem ob das System Unocode unterstützt oder nicht.
Wenn du RegisterClass benutzt, passt der Compiler den Aufruf automatisch an den aktuellen Zeichensatz an (siehe Definition).
-
Ich habe von vornherein die RegisterClass() Methode benutzt, als es damit nicht ging habe ich angefangen die anderen auszuprobieren.
-
Auf welchem System (OS) schreibst du denn ?
-
WinXP, da funktioniert es auch.
-
Versuchs nochmal mit RegisterClassA. RegisterClassW gibts auf WinME wenn überhaupt nur als Stub, und so ein Stub liefert dann eben genau ERROR_CALL_NOT_IMPLEMENTED zurück.
-
Ersteinmahl danke, es funktioniert tatsächlich mit RegisterClassA() aber nicht mit der direkten Angabe der Methode, ich habe dann den Zechensatz verändert und schon ging es, bei VC++ 2005 Express Edition unter Projekteigenschaften->Allgemein->Zeichensatz anstatt Unicode-Zeichensatz, Multi-Byte-Zeichensatz verwenden.
-
9taleFox schrieb:
WinXP, da funktioniert es auch.
Und wo funktioniert es nicht ?
-
Auf WinME ging es nicht, aber mit dem Multi-Byte-Zeichensatz schon. Jetzt habe ich aber eine Frage, unterstützen alle Win. Systeme diesen Zeichensatz? Oder muss man je nach dem System schauen ob des ANSI oder Unicode unterstützt.