From 37a04d75980e69016238b46253b96aceb4cca0ac Mon Sep 17 00:00:00 2001 From: FunkyFr3sh Date: Tue, 28 May 2024 21:54:49 +0200 Subject: [PATCH] improve logging for windows --- src/utils.c | 28 ++++++++++++++++++++++++++-- src/winapi_hooks.c | 2 ++ 2 files changed, 28 insertions(+), 2 deletions(-) diff --git a/src/utils.c b/src/utils.c index 4d29bfb..c7de295 100644 --- a/src/utils.c +++ b/src/utils.c @@ -553,10 +553,34 @@ void util_set_window_rect(int x, int y, int width, int height, UINT flags) BOOL CALLBACK util_enum_thread_wnd_proc(HWND hwnd, LPARAM lParam) { - if (!g_ddraw.hwnd) + LONG sytle = real_GetWindowLongA(hwnd, GWL_STYLE); + + if (!g_ddraw.hwnd && !(sytle & WS_DISABLED)) g_ddraw.hwnd = hwnd; - return FALSE; +#ifdef _DEBUG + char class[MAX_PATH] = { 0 }; + GetClassNameA(hwnd, class, sizeof(class) - 1); + + char title[MAX_PATH] = { 0 }; + GetWindowTextA(hwnd, title, sizeof(title) - 1); + + RECT pos = { 0 }; + real_GetWindowRect(hwnd, &pos); + + RECT size = { 0 }; + real_GetClientRect(hwnd, &size); + + LONG exsytle = real_GetWindowLongA(hwnd, GWL_EXSTYLE); + + TRACE( + "%s(class=%s, title=%s, X=%d, Y=%d, nWidth=%d, nHeight=%d)\n", + __FUNCTION__, class, title, pos.left, pos.top, size.right, size.bottom); + + dbg_dump_wnd_styles(sytle, exsytle); +#endif + + return TRUE; } BOOL CALLBACK util_enum_child_proc(HWND hwnd, LPARAM lparam) diff --git a/src/winapi_hooks.c b/src/winapi_hooks.c index bd565e8..f688ee6 100644 --- a/src/winapi_hooks.c +++ b/src/winapi_hooks.c @@ -1318,6 +1318,8 @@ BOOL WINAPI fake_GetDiskFreeSpaceA( BOOL WINAPI fake_DestroyWindow(HWND hWnd) { + TRACE("DestroyWindow(hwnd=%p) - g_ddraw.hwnd=%p\n", hWnd, g_ddraw.hwnd); + BOOL result = real_DestroyWindow(hWnd); if (result && g_ddraw.ref && hWnd == g_ddraw.hwnd)