Software Development tools

ProcessExplorer

Click to enlarge A tool for viewing active processes and modules they use (DLL libraries). Main application window displays the list of all processes have been loaded, when you select a process from the list the right pane shows detailed process information as well as list of libraries loaded by it. For each library loaded application displays preferred base address (the address the library was built with) and real base address (where the library was loaded). It is very important to build libaries so that every one has unique base address, because operating system relocates library when it is unable to load the library into its preffered address, and this, in turn, significantly slows down application startup and wastes physical memory. Details are in the article by Mikhail Basov (Russian only). ProcessExplorer is just to avoid these situations. By the way picture mentioned above shows that so popular WinAmp runs completely counter to this rule.

ProcessExplorer is based on idea and code given in Jeffrey Richter's "Advanced Windows" book have been ported to Delphi (compiled in Delphi 6 and Delphi 7). Program source code may be used as an example on using ToolHelp API functions.

ProcessExplorer software is distributed under terms of GNU General Public License, thus allowing you to freely copy or modify its source code keeping noticed the software's origin.

NOTES:
  • ProcessExplorer uses ToolHelp API functions, which allows it to run under Windows 95/98/ME/2000/XP but not NT 4!
  • To compile program sources you will need shareware Toolbar 2000 component library by Jordan Russel

Download:
ProcessExplorer v0.02 (English) - 318 k
ProcessExplorer v0.02 source code - 21 k (NB: you need Toolbar 2000 library to compile)

Hosted by uCoz