2014-11-02 7 views
0

창을 조합하려고했으나 창에 이름을 지정해야 할 때 말했습니다. (오류 : "const char *"유형의 인수가 "LPCWSTR"유형과 호환되지 않습니다.) CreateWindow 메소드에 대한 프로그래밍이 아래에 있습니다. 오류가 모든 도움을 환영합니다 이상입니다 창 이름을 설정할 수 없습니다


라인 2.


hwnd = CreateWindow(
    "Engine_Winter_Name", 
    "Winter Engine", 
    WS_OVERLAPPED | WS_SYSMENU | WS_CAPTION, 
    GetSystemMetrics(SM_CXSCREEN)/2 - WIDTH/2, 
    GetSystemMetrics(SM_CYSCREEN)/2 - HEIGHT/2, 
    WIDTH, 
    HEIGHT, 
    (HWND)NULL, 
    (HMENU)NULL, 
    hInstance, 
    (LPVOID*)NULL); 

if (!hwnd) 
    return false; 

ShowWindow(hwnd, nCmdShow); 

return true; 
에 있어야합니다! 미리 감사드립니다.

답변

0

와이드 문자열이 필요합니다. 문자열 앞에 접두사 L을 붙입니다.

hwnd = CreateWindow(
    L"Engine_Winter_Name", 
    L"Winter Engine", 
0

UNICODE으로 정의하고 있습니다. 넓은 문자를 기대 CreateWindowWCreateWindow 매크로지도, (wchar_t 기반) 인수 :

hwnd = CreateWindow(
    L"Engine_Winter_Name", 
    L"Winter Engine", 
    WS_OVERLAPPED | WS_SYSMENU | WS_CAPTION, 
    GetSystemMetrics(SM_CXSCREEN)/2 - WIDTH/2, 
    GetSystemMetrics(SM_CYSCREEN)/2 - HEIGHT/2, 
    WIDTH, 
    HEIGHT, 
    HWND(), 
    HMENU(), 
    hInstance, 
    nullptr); 

if (!hwnd) 
    return false; 

ShowWindow(hwnd, nCmdShow); 

현대 Windows 바탕 화면 프로그래밍을위한 당신이하고있는대로, 유니 코드 기반의 API를 사용하는 것이 좋습니다.