Ich versuche, ein Fenster aus meinem Prozess in das Fenster eines externen Prozesses mit der SetParent Funktion einzubetten und habe ein paar Probleme, die ich hoffe, kann mir jemand helfen mit. Zunächst einmal, hier ist ein Überblick über, was ich derzeit tue mein Fenster in die Anwendung einbetten:Einbetten von HWND in externen Prozess mit SetParent
HWND myWindow; //Handle to my application window
HWND externalWindow; //Handle to external application window
SetParent(myWindow,externalWindow);
//Remove WS_POPUP style and add WS_CHILD style
DWORD style = GetWindowLong(myWindow,GWL_STYLE);
style = style & ~(WS_POPUP);
style = style | WS_CHILD;
SetWindowLong(myWindow,GWL_STYLE,style);
Dieser Code funktioniert und mein Fenster erscheint in der anderen Anwendung, sondern stellt die folgenden Probleme:
- Tastaturkurzbefehle der Hauptanwendung nicht funktionieren, während mein Fenster den Fokus hat
Kennt jemand einen Workaround dafür? Ich möchte, dass mein Fenster als ein anderes Kindfenster der Hauptanwendung behandelt wird.