3.0, HBitmap, and task manager numbers

Use this forum for questions on how to use .NET Memory Profiler and how to analyse memory usage.
Post Reply
Posts: 1
Joined: Wed Jul 26, 2006 5:17 pm

3.0, HBitmap, and task manager numbers

Post by cwmaloney » Thu Jul 27, 2006 12:11 am


We are big fans of Profiler. We don't use it every day - but at the end of a development cycle and when we are testing - it is great for finding those pesky "event handler left hooked" and other leaks. We have also used it to find issues that are really .Net Framework 1.1 SP1 bugs - but so far we have been lucky - Microsoft has had "hot fixes" for these issues.

We are looking at possible "unmanaged" resource and memory leaks - and hoping that the new 3.0 featues will help with this. We are not convinced we have leaks and are mostly "testing" at this point.

We are using Interactive mode and have tried various combinations of settings - currently we are using:
"collection realtime data" = true
"enable low impact profiling" = false
"enable dispose tracker" = true
"enable root referee id" = true
"enable heap utilization tracking" = false
"disable inlining" = true"

Profiler (3.0) reports that our product is leaking HBitmap's. When we compare Profilers reports to Task Manager's GDI objects and other tools we have for examining GDI resources on running processes, we see that Profiler claims we have more bitmaps. Have you seen this type of issue?

We have reproduced this behavior with a simple C# MDI project that I would be happy to share if that would help.

Also, when we set the "Hook functions" option to "all", our produciton application and our mini-test application fail to load. Could you give us a more information about this option ? Should we be concerned that we cannot use it?

thanks for your help,

Andreas Suurkuusk
Posts: 1029
Joined: Wed Mar 02, 2005 7:53 pm

Post by Andreas Suurkuusk » Fri Jul 28, 2006 3:55 pm


Thank you for the information about the false leak report of HBITMAPs. We have not seen this before and we would appreciate if you could send us an application that reproduces this error. You can contact us at support@scitech.se.

Hooking all functions causes the profiler to inject hooking code into all exported functions in the tracked dlls, which allows more detailed unmanaged callstack information to be presented. Normally this should only cause the program to run slightly slower, but since much more functions are hooked, the risk of problems also increases. We have found and solved some problems with the resource tracker. The fixes will be included in the next release and hopefully they will also solve your problem.
Best regards,

Andreas Suurkuusk
SciTech Software AB

Post Reply

Who is online

Users browsing this forum: No registered users and 22 guests