Problem inserting custom window in Conquer

11/18/2025 16:24 yuturueu#1
Hey guys, can you help me with a situation? I have a client from path 5079, I made a custom window using "Dear ImGui" + DirectX 8, to work directly on the Conquer screen, since it works in DirectX 8..... The screen is 100% in the child window of (1000) of "MyShell"... ok. However, I have a problem working with the mouse event. When clicking, the mouse hovers over and correctly displays the cursor for dragging or clicking, but to actually click, this doesn't work. It simply goes through the click and forces the character to walk or click on anything on the game screen itself... it doesn't obey the button that's there. I tried hooking "PeekMessageW" to capture what's passed to the Conquer screen, to analyze if it's displaying the screen and perform the necessary actions... but without success. Does anyone have any idea what I can do? Find the event associated with the mouse clicks in the Conquer process? or something similar...???

[Only registered and activated users can see links. Click Here To Register...]

[Only registered and activated users can see links. Click Here To Register...]:confused:
11/22/2025 13:55 teroareboss1#2
I haven’t worked with ImGui. But Windows GUI windows are global. You can use Spy++ to identify them, move them, or change their parents, etc. I remember testing this idea once with a ‘Custom GUI’. What I did was simply draw a button. I used CreateWindow to create the button, and then I applied an image over it using DirectX.
11/23/2025 21:06 yuturueu#3
Quote:
Originally Posted by teroareboss1 View Post
I haven’t worked with ImGui. But Windows GUI windows are global. You can use Spy++ to identify them, move them, or change their parents, etc. I remember testing this idea once with a ‘Custom GUI’. What I did was simply draw a button. I used CreateWindow to create the button, and then I applied an image over it using DirectX.

thankyou
11/23/2025 21:36 Relic#4
You need to hook into the child window proc and swallow any mouse events if imgui requests mouse capture:

HTML Code:
class MouseHook {
	inline static HWND parentWindow;
	inline static HWND childWindow;
	inline static WNDPROC oChildWndProc = NULL;

	inline static LRESULT __stdcall ChildWndProc(HWND hWnd, uint32_t uMsg, WPARAM wParam, LPARAM lParam)
	{
		ImGuiIO& io = ImGui::GetIO();

		switch (uMsg)
		{
		case WM_LBUTTONDOWN:
		case WM_LBUTTONUP:
		case WM_MOUSEMOVE:
		case WM_RBUTTONDOWN:
		case WM_RBUTTONUP:
		case WM_MBUTTONDOWN:
		case WM_MBUTTONUP:
		case WM_MOUSEWHEEL:
		case WM_MOUSEHWHEEL:
		{
			if (io.WantCaptureMouse)
			{
				// swallow mouse events
				return 0;
			}
			break;
		}
		}

		// Otherwise let normal processing happen
		return CallWindowProc(oChildWndProc, hWnd, uMsg, wParam, lParam);
	}

public:
	inline static void Init() 
	{
		parentWindow = GetParent(GetActiveWindow());
		childWindow = GetWindow(parentWindow, GW_CHILD);
		oChildWndProc = (WNDPROC)SetWindowLongPtr(childWindow, GWLP_WNDPROC, (LONG_PTR)ChildWndProc);
	}
};
I haven't tested the above code but it should work.