It only takes time on the first CreateWindow call, which seems logical, since after the call, the symbols are supposedly "loaded", so the debugger doesn't "waste time" to search for them. I only had problems with this debugger with messenger plus so far. At startup, the debugger loads [or try to load] all the symbols corresponding to the dll's used by my application (kernel32.dll, winmm.dll and so on - most of them don't have symbol files). The point is, the whole loading doesn't even take a tenth of a second, whereas the search for msgplusloader/msgplusloader1.dll's symbols can take up to 15 seconds (and usually not less than 5 or 6, which is quite annoying).
This problem has only appeared since [I think it's 3.60.144, well, I had this problem before upgrading to 3.62.146].
I'm using visual studio 8.0. To be sure it was'nt the debugger, I tested creating a window in a blank visual studio 2003 project (as far as I know, the only link between the two debuggers is that they're from microsoft), and the problem is still here. Are you sure there's no hook when I set msgplus to Default or Default-forced ? Anyway, I'd be happy to test again with any debugger you like (remember that the hang happens when the debugger tries to load msgplus's dlls). Thanks for your reply.
Update: If that may help, this is what my debugger can say when I watch the modules loaded :
Note that your module is only loaded at runtime, on the first CreateWindow call.
Yet another update : the function "MessengerPlusGlobalHook" from msgplus...1.dll is called whenever I use "CreateWindow" (verified, just set up a breakpoint in assembly code). If that's normal, feel free to ignore this remark.