Fehler beim Kompilieren von WinAPI
-
Hi. Hoffe ihr könnt mir helfen....
Irgendwas fehlt bei den Einstellungen vom Kompiler von mir...
Visual C++ 2005 expressKriege die Fehlermeldung
error C2664: 'MessageBoxW': Konvertierung des Parameters 2 von 'const char [41]' in 'LPCWSTR' nicht möglich Die Typen, auf die verwiesen wird, sind nicht verknüpft; die Konvertierung erfordert einen reinterpret_cast-Operator oder eine Typumwandlung im C- oder Funktionsformat.
wenn ich z.B. ne Messagebox kompiliere.
Jetzt sagt ihr bestimmt RTFM installier dir PDSK.
Hab ich, wie inhttp://www.germangamedev.de/index.php?site=article&id=28
beschriebenalles gemacht....
MFG
chewbo
-
Das klingt stark nach einer Diskrepanz in der UNICODE-Einstellung. MessageBoxW ist eine Funktion für wchar_t, der du offenbar ein char-Array übergeben hast.
Als Lösung kann ich dir zwei Möglichkeiten anbieten:
a) Lösche die Definition UNICODE aus den Projekteinstellungen
b) ändere den Typ des übergebenen Parameters von char[] auf TCHAR[]
-
Ahh danke jetzt funktionierts.
Um zu wissen was ich gemacht hab, was ist und wo ist der Unterschied zwischen
UNICODE Zeichensatz und Multibyte Zeichensatz?
-
UNICODE-Zeichensatz hat eine feste Breite von (meist) 2 Byte, Multibyte-Zeichen haben eine variable Breite (1 oder mehr Byte). Für genauere Informationen empfehle ich einen tieferen Blick in die MSDN.