http://bugs.winehq.org/show_bug.cgi?id=14784
Summary: SetWindowHookEx fails to inject DLL conatining the HookProc if... Product: Wine Version: 1.1.2 Platform: All OS/Version: Linux Status: UNCONFIRMED Severity: enhancement Priority: P3 Component: user32 AssignedTo: wine-bugs@winehq.org ReportedBy: hongbo@njstar.com
SetWindowHookEx fails to inject DLL conatining the HookProc into another process if the DLL is linked with another DLL in the same directory which is not on PATH.
Suppose DLLA_GetMsgProcis is in A.DLL, and A.dll is linked to B.dll, with those code:
hwnd = FindWindow("Notepad",NULL); idThread = GetWindowThreadProcessId(hwnd, NULL); SetWindowsHookEx(WH_GETMESSAGE, DLLA_GetMsgProc, hinst, idThread );
SetWindowsHookEx will fail because it can not load B.dll which is imported by A.dll.
If hwnd is created by current process, there is no problem. But in above code, Notepad is not the current process.
I have created a simplest test application (attached) with source and compiled exe/dll to show the above bug on wine.
http://bugs.winehq.org/show_bug.cgi?id=14784
--- Comment #1 from Hongbo Ni hongbo@njstar.com 2008-08-06 22:01:01 --- Created an attachment (id=15327) --> (http://bugs.winehq.org/attachment.cgi?id=15327) Testing SetWindowsHookEx to Hook Notepad
http://bugs.winehq.org/show_bug.cgi?id=14784
Hongbo Ni hongbo@njstar.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Severity|enhancement |major
--- Comment #2 from Hongbo Ni hongbo@njstar.com 2008-08-06 22:11:42 --- Hi,
I have already submited a patach to fix this bug.
http://www.winehq.org/pipermail/wine-patches/2008-August/059294.html
Please test and confirm if my patch fixes the bug.
As discussed by Dmitry Timoshkov in http://www.winehq.org/pipermail/wine-devel/2008-August/068031.html
It's not possible to created such test case in wine. So please test my standalone test program (in a zip file) I attached in prior post.
Regards Hongbo Ni
http://bugs.winehq.org/show_bug.cgi?id=14784
Hongbo Ni hongbo@njstar.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Summary|SetWindowHookEx fails to |SetWindowHookEx fail to |inject DLL conatining the |inject DLL containing the |HookProc if... |HookProc if...
http://bugs.winehq.org/show_bug.cgi?id=14784
--- Comment #3 from Hongbo Ni hongbo@njstar.com 2008-08-06 22:37:13 --- *** Bug 14699 has been marked as a duplicate of this bug. ***
http://bugs.winehq.org/show_bug.cgi?id=14784
Dmitry Timoshkov dmitry@codeweavers.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Severity|major |normal Priority|P3 |P2 Platform|All |Other
--- Comment #4 from Dmitry Timoshkov dmitry@codeweavers.com 2008-08-07 00:03:46 --- 'normal' should be enough.
http://bugs.winehq.org/show_bug.cgi?id=14784
Juan Lang juan_lang@yahoo.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Status|UNCONFIRMED |NEW Ever Confirmed|0 |1
--- Comment #5 from Juan Lang juan_lang@yahoo.com 2008-08-07 10:10:57 --- Confirming that the test works on Windows XP SP2. I started notepad, hooktest, and modulist, and selected '1. Inject DLLA.dll into Notepad' from the Test menu. I refreshed modulist, and found the entries for DLLA and DLLB. There were two for each, one in notepad and another in hooktest. I then selected '2. Unload DLLA.dll for Notepad', and refreshed modulist. The entries for DLLA and DLLB loaded in notepad were removed.
http://bugs.winehq.org/show_bug.cgi?id=14784
Austin English austinenglish@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Keywords| |patch
http://bugs.winehq.org/show_bug.cgi?id=14784
Austin English austinenglish@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Keywords| |testcase
http://bugs.winehq.org/show_bug.cgi?id=14784
--- Comment #6 from Austin English austinenglish@gmail.com 2009-02-16 02:25:49 --- Is this still an issue in current (1.1.15 or newer) wine?
http://bugs.winehq.org/show_bug.cgi?id=14784
--- Comment #7 from Hongbo Ni hongbo@njstar.com 2009-02-16 06:09:10 --- Yes, the issue is still there in latest git.
It seems that nobody is interested in fixing this issue even the patch has been provided 6 months ago.
http://bugs.winehq.org/show_bug.cgi?id=14784
--- Comment #8 from Jeff Zaroyko jeffz@jeffz.name 2009-02-16 06:27:15 --- (In reply to comment #7)
Yes, the issue is still there in latest git.
It seems that nobody is interested in fixing this issue even the patch has been provided 6 months ago.
You should send it again and ask for feedback on wine-devel if it isn't accepted within a few days.
http://bugs.winehq.org/show_bug.cgi?id=14784
--- Comment #9 from Austin English austinenglish@gmail.com 2009-08-26 12:28:37 --- Still present.
http://bugs.winehq.org/show_bug.cgi?id=14784
Hongbo Ni hongbo@njstar.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Status|NEW |RESOLVED Resolution| |FIXED
--- Comment #10 from Hongbo Ni hongbo@njstar.com 2009-08-30 04:07:26 --- At last (after one year), my patch has been accepted.
http://bugs.winehq.org/show_bug.cgi?id=14784
Alexandre Julliard julliard@winehq.org changed:
What |Removed |Added ---------------------------------------------------------------------------- Status|RESOLVED |CLOSED
--- Comment #11 from Alexandre Julliard julliard@winehq.org 2009-09-02 14:16:25 --- Closing bugs fixed in 1.1.29.