You are hereProducts / Desktop Heap Monitor for Vista, Server 2008, and 7

Desktop Heap Monitor for Vista, Server 2008, and 7


  1. Introduction
  2. Download & Install
  3. Usage
  4. Uninstallation
  5. Tutorial Video


Desktop Heap Monitor is a tool for querying the usage of an important area of memory in Windows based computers.

This memory is independent of, and limited in size compared to normal memory and is used everytime a new program is started and for every window and menu a program creates. When running a large amount of programs or programs with many windows, this limited memory can be exhausted leading to graphical errors and incorrect behaviour. Another symptom that no more memory is available is an "Out of Memory" or a "Unable to Start Correctly (0xC0000142)" error message.

This tool can be used to see whether exhausting the desktop heap is the reason for these failures or to give you a status report on the amount of memory left to be used.


Download the install package and extract it to the directory of your choice (requires 7-zip). The installation instructions are exactly the same as they are in the accompanying chm help file, with one minor exception. Instead of invoking dheapinst.exe directly you must specify dheapinst in order for correct initialization to take place. You can also watch the video at the bottom of the page for a complete walkthrough

The most common installation usage is like:

dheapinst -y srv*

See the help file in the dheapmon directory for more and alternate options, along with explanations. With that, setup is complete.


Before a report can be generated, run "dheapmon -l" to ensure the driver is loaded. After this has succeeded, "dheapmon" itself will generate a simple report and "dheapmon -v" will give a more in-depth report.

Some improvements have been made over the original version. The tool now gives reports on all desktops present on the computer regardless of session, rather than just the current session. As it is not uncommon for desktops in different sessions to be similarly named, the session that the desktop belongs to is appended to the name, producing output like that in the screenshot above (click for larger version).

The current session ID is given in the banner so you can easily see which desktops you are interacting with, rather than the ones used by services and other system components.


Removal is achieved by running "dheapinst -r" from an elevated command prompt or by selecting the Desktop Heap Monitor entry from the "Add or Remove programs" control panel.


DHeapMon Normal Output