Witam.
Korzystam z MS VS 2010 Ultimate i mam dziwny problem z kompilacją programów windowsowych:
C++ uczę się z Megatutoriala Xion'a i kiedy chcę skompilować przykłady programów windowsowych ( part3, te co są juz dołączone ) wszystko pięknie się kompiluje. Ale kiedy już chcę utworzyć nowy projekt ( wszystko według tego tutoriala ), i wpisać w main.cpp ( a nawet wkleić :P ) ten sam kod, już aplikacja się nie kompiluje :(
A oto przykładowy kod z pierwszego programu:
// MsgBox - okno komunikatu
#define WIN32_LEAN_AND_MEAN
#include <windows.h>
int WINAPI WinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance,
LPSTR lpszCmdLine, int nCmdShow)
{
MessageBox (NULL, "Oto nasz pierwszy program w Windows!", "Komunikat", NULL);
return 0;
}
W przykładzie pięknie się kompiluje, ale we własnym projekcie już nie.
W funkcji:
MessageBox (NULL, "Oto nasz pierwszy program w Windows!", "Komunikat", NULL);
- i 3. argument podświetla się na czerwono, a oto błąd przy nim:
Error: argument of type "const char*" is incompatible with parametr of type "LPCWSTR"
A kiedy przed tym stringiem dodam L:
MessageBox (NULL, L"Oto nasz pierwszy program w Windows!", L"Komunikat", NULL);
Program się kompiluje poprawnie. A to L jest bodajże od unicode. No ale co jak trzymam zwykły tekst w zmiennej? tu już L nie wstawię.
Wie ktoś może dlaczego tak mam? Jak to mogę naprawić? W różnych kursach przykładach itp. w internecie jest wszystko podane bez tej L i jakoś im działa. Również w tym przykładzie od Xion'a działa jak należy a w nowym projekcie nie.
Próbowałem zainstalować inną wersję kompilatora ( MS VS 2008 Professional ) i nadal to samo.
Wie ktoś o co chodzi?
Z góry thx.