Не получается вывести картинку в GDI

Подскажите, пожалуйста, почему не работает функция picShow.

#include <Windows.h>
#include <iostream>

    void picShow(HDC hdc) {

    HDC memDC = CreateCompatibleDC(hdc);
    HBITMAP memBM = (HBITMAP)LoadImage(NULL, L"C:\\pic.bmp", IMAGE_BITMAP, 0, 0, LR_LOADFROMFILE); 
    SelectObject(memDC, memBM);

    BitBlt(hdc, 0, 0, 800, 600, memDC, 0, 0, SRCCOPY);
    DeleteDC(memDC);
    DeleteObject(memBM);
    
}


LRESULT CALLBACK windowProcedure(HWND hwnd, UINT message, WPARAM wparam , LPARAM lparam) {
    if (message == WM_DESTROY) {
        exit(1);
    }

    else {
        return DefWindowProc(hwnd, message, wparam, lparam);
    }
}


int main() {
    

    WNDCLASSW window_class;
    memset(&window_class, 0, sizeof(window_class));
        window_class.lpszClassName = L"window";
        window_class.lpfnWndProc = windowProcedure;
    RegisterClass(&window_class);
    HWND window_hwnd = CreateWindow(L"window", L"PicShow", WS_OVERLAPPEDWINDOW, 0, 0, 800, 600, NULL, NULL, NULL, NULL);
    HDC window_hdc = GetDC(window_hwnd);
    ShowWindow(window_hwnd, SW_SHOWNORMAL);

    MSG msg;
    
    while (true) {
        
        if (PeekMessageA(&msg, 0, NULL, NULL, PM_REMOVE)) {
            DispatchMessage(&msg);
        }
        
        picShow(window_hdc);
    }



    return 0;
}

Ответы (0 шт):