Wie erhalte ich den HINWEIS für die CreateWindowEX-Funktion, wenn ich sie außerhalb von WinMain verwende?

Ich versuche, ein Popup-Fenster zu erstellen, wenn ich in meinem Hauptfenster auf eine Schaltfläche klicke, und verwende dazu die CreateWindowEX-Funktion. Die CreateWindowEx-Funktion erhält jedoch die Variable HINSTANCE als vorletzten Parameter. Da ich dieses neue Fenster innerhalb von WndProcedure erstelle, wenn auf eine Schaltfläche geklickt wird, steht mir die Variable HINSTANCE in der WinMain-Funktion nicht zur Verfügung, da es sich nicht um eine globale Variable handelt.

Der folgende Code wurde von der WndProcedure-Rückruffunktion abgerufen:

            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);
             }

Wie würde ich vorgehen, um die benötigte hInstance-Variable abzurufen, damit die CreateWindowEx-Funktion innerhalb der WndProcedure-Rückruffunktion funktioniert?

Hinweis: Ich habe überlegt, die Variable hInstance global zu machen, bin mir aber nicht sicher, ob für jedes einzelne Fenster, das meine Anwendung erstellt, dieselbe Instanz verwendet werden muss.

Antworten auf die Frage(1)

Ihre Antwort auf die Frage