madCHook v2.1.2.0 - ICQ.exe = 100% CPU Usage.

c++ / delphi package - dll injection and api hooking
Post Reply
hmemcpy
Posts: 12
Joined: Tue Apr 20, 2004 11:47 pm

madCHook v2.1.2.0 - ICQ.exe = 100% CPU Usage.

Post by hmemcpy »

Hello madshi, and fellow developers.

Some time ago I posted a link to a tool which is sort of a debugger for ICQ, called ICQMenace (viewtopic.php?t=19).

ICQMenace comes with source included, and contains MadCodeHookLib v1.3.0.11. With this version, the tool works perfect. However, changed to v2.1.2.0 (replacing, of course, the madCHook.pas as well), upon executing, the hooked file (icq.exe) is using 100% of the CPU.

Does anyone have an explanation for this? Perhaps one of the options in the madCHook.pas?

PS: The DLL is being used in both ICQMenace.exe, and ICQMenace.dll (seperate dir in the source code) - when compiling - keep in mind.

PS 2: I'm using Delphi 7 if that matters.

Thank you in advance.
madshi
Site Admin
Posts: 10753
Joined: Sun Mar 21, 2004 5:25 pm

Post by madshi »

I've had a quick glance at the hook dll's source code, but I can't tell what's wrong. Clearly the logging isn't thread safe, that might be problem - but then it should also make problems with the older madCHook version.

If you want to get this solved, you can either ask the author of the program to check the problem out (I simply don't have the time for that), or you can have a go at it yourself. First of all I'd suggest to comment the API hooks. If the freeze is gone, then put the hooks back in, but remove all code from the API hook callback functions - except the call to the next hook. If you still see no freeze, put the callback code back in, but one API after the other, until you find the guilty one.

I'm willing to help finding the problem, but I don't have the time to do all the work myself, I'm sorry...
Post Reply