WNDCLASSEXW wcex;
wcex.cbSize = sizeof(WNDCLASSEX);
wcex.style = CS_HREDRAW | CS_VREDRAW;
wcex.lpfnWndProc = _WndProc;
wcex.cbClsExtra = 0;
wcex.cbWndExtra = 0;
wcex.hInstance = hInstance;
wcex.hCursor = LoadCursor(nullptr, IDC_ARROW);
wcex.hbrBackground = (HBRUSH)GetStockObject(BLACK_BRUSH);
wcex.lpszMenuName = MAKEINTRESOURCEW(IDC_CPP_GAME_LAUNCHER);
wcex.lpszClassName = Constants::GUID.c_str();
RegisterClassExW(&wcex);
hWnd = CreateWindowExW(0, Constants::GUID.c_str(), szWindowTitle, WS_POPUP | WS_MINIMIZEBOX,
windowX, windowY, windowWidth, windowHeight, nullptr, nullptr, nullptr, nullptr);
if (!hWnd)
throw std::logic_error("Failed to create window!");