Ich habe angefangen, die win32-API auf dieser Site anzuschauen: Ссылка
Ich habe buchstäblich das erste Beispiel kompiliert und es hat mir eine Nachricht in Chinesisch / Japanisch oder etwas in dieser Richtung gegeben.
Frage: Warum?
Offensichtlich sollte ich, so weit mein Verständnis geht, "Auf Wiedersehen, grausame Welt!" in einer Nachrichtenbox (vermutlich mit dem Titel "Hinweis").
%Vor%
Danke.
Versuchen Sie, den Code wie folgt zu ändern:
%Vor% Wenn es funktioniert, weil Ihnen einige Header fehlen, die auf die richtige API verweisen, scheinen Sie MessageBoxW (die Unicode-Version) mit einer ANSI-Zeichenfolge aufzurufen. Wenn dies nicht nur ein Test ist, sondern Sie beginnen, ein echtes Weltprogramm zu schreiben, sollten Sie überlegen, welche Art von Zeichen Sie verwenden möchten (dies ist normalerweise ein Precompiler-Flag). Verwenden Sie dann das Makro _T(
, damit Ihre Literale mit Unicode / Ansi kompatibel sind.
Bearbeiten von @Benoit-Kommentar: Beim Starten eines neuen Projekts mit VS 2008/10 wird standardmäßig der Unicode-Zeichensatz festgelegt.
Ich kann es nicht auf Standard setzen, also muss jedes neue Projekt eingestellt werden. Um die Einstellung zu finden: Verwenden von Visual Studio 2010 Wählen Sie aus dem Hauptmenü → Projekte → Eigenschaften → Konfigurationseigenschaften → Allgemein → Projektdetails → Zeichensatz → Mehrbyte-Zeichensatz verwenden (wurde auf "Unicode-Zeichensatz verwenden" gesetzt)
Danach scheint alles gut.