I compile this simple "Hello world" Win32 program:

int WINAPI WinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance, 
LPSTR lpCmdLine, int nCmdShow)
MessageBox(NULL, "Hello World!", "Note", MB_OK);
return 0;

When the program runs I get weird fonts. See attachement.

Kindly advise.


The more recent Microsoft compilers default to UNICODE encoding for characters. I'm surprised this compiled without any warnings.

Try something like MessageBox(NULL, _TEXT("Hello World!"), _TEXT("Note"), MB_OK);

Or turn off UNICODE Project --> Properties -->Configuration Properties, then the value of Character Set property to Not Set