Using Heap Walker

The Windows CE Heap Walker (ceheapwk.exe) displays detailed information about heap identifiers and processes flags that are running on a device. Use the Heap Walker to verify if an application is releasing all the memory it allocates. The Heap Walker is a useful tool for determining if an application has memory leaks. The following screen shot shows the Heap Walker Process List window.

The following table shows and describes the Heap Walker process list column headings.

Column heading
Description
Heap ID A hex representation of a specific heap within a specified process.
Process A hex representation of a specific process identifier.
Process ID The user-friendly name for the process.
Flag The name of the flag associated with a specific heap. All processes start with at least one heap. HF32_DEFAULT refers to the default heap for the specified process.

Because a process can have multiple heaps, there may be several heap identifiers for each process identifier. Even though a single heap identifier may correspond to several different listings in the Process ID column, each listing in the Heap ID column represents a specific heap in a process.

You can save the contents of the Memory Dump window, the Process list window, or the Heap List window in a text file, as shown in the following procedure.

    To save the contents of a Heap Walker window

  1. Choose the window that contains content you want to save as a text file.
  2. Choose Save on the File menu.

Double-click a heap identifier to download and view the HeapList window for a selected process. The desktop computer then downloads the heap list for the selected process. The following screen shot shows the HeapList window.

The following table shows and describes the heap list column headings.

Column heading
Description
Address The address of the memory object.
Block Size The size, in bytes, of the memory block.
Flags The Fixed flag means the object is not movable or discardable; the Free flag means the object is discardable. These terms apply to a block within a heap.

Select a memory address within the heap to download and view the memory dump window for the selected process identifier. The following screen shot shows the memory dump list.

The following table shows and describes the Heap Walker Process ID columns.

Column heading
Description
Address The memory address of the heap
Hex A hex representation of the contents of the heap
ASCII An ASCII representation of the contents of the heap