I'm learning the Win32 framework (and others) to make a simple window to later draw with OpenGL on (C99).
Code:
WNDCLASSEX wc = {
    .cbSize = sizeof(WNDCLASSEX),
    .style = 0,
    .lpfnWndProc = cif_win32_wndproc,
    .cbClsExtra = 0,
    .cbWndExtra = 0,
    .hInstance = GetModuleHandle(NULL),
    .hIcon = LoadIcon(NULL, IDI_APPLICATION),
    .hCursor = LoadCursor(NULL, IDC_ARROW),
    .hbrBackground = (HBRUSH) (COLOR_WINDOW + 1),
    .lpszMenuName = NULL,
    .lpszClassName = cif_win32_class,
    .hIconSm = LoadIcon(NULL, IDI_APPLICATION),
};

if(!RegisterClassEx(&wc)) {
    return NULL;
}

HWND hwnd = CreateWindowEx(WS_EX_CLIENTEDGE, cif_win32_class, "Nyeeh", WS_EX_OVERLAPPEDWINDOW, 200, 200, 240, 120, NULL, NULL, GetModuleHandle(NULL), NULL);
`cif_win32_class` is just a `const char[]`.

Here `CreateWindowEx` gives me an 1400 error (`ERROR_INVALID_WINDOW_HANDLE`). Strangely, if I replace `"Nyeeh"` with `""`, then I get an 87 error instead (`ERROR_INVALID_PARAMETER`).