Как получить HINSTANCE для функции CreateWindowEX при использовании ее вне WinMain?
Я пытаюсь создать всплывающее окно, когда я нажимаю кнопку в моем главном окне, и я использую функцию CreateWindowEX для этой цели. Однако функция CreateWindowEx получает переменную типа HINSTANCE в качестве своего второго последнего параметра. Учитывая, что я создаю это новое окно изнутри WndProcedure при нажатии кнопки, переменная HINSTANCE в функции WinMain не будет мне доступна, поскольку она не является глобальной переменной.
Следующий код был получен из функции обратного вызова WndProcedure:
case IDC_BUTTON PRESSED:
{
const char g_szClassName2[] = "POPWIND";
const char WndName2[] = "POPUP WINDOW";
HWND invisWindowHandle = CreateWindowEx(0,
g_szClassName2,
WndName2,
WS_OVERLAPPEDWINDOW,
200,
200,
800,
500,
NULL,
NULL,
hInstance,//THIS IS THE VARIABLE I AM HAVING TROUBLE GETTING
NULL);
ShowWindow(invisWindowHandle, 3);// SW_SHOWNORMAL);
UpdateWindow(invisWindowHandle);
}
Как мне получить нужную мне переменную hInstance, чтобы функция CreateWindowEx работала внутри функции обратного вызова WndProcedure?
Примечание. Я подумал о том, чтобы сделать переменную hInstance глобальной, но я не уверен, нужно ли использовать один и тот же hInstance для каждого окна, которое создает мое приложение.