You are currently viewing a snapshot of www.mozilla.org taken on April 21, 2008. Most of this content is highly out of date (some pages haven't been updated since the project began in 1998) and exists for historical purposes only. If there are any pages on this archive site that you think should be added back to www.mozilla.org, please file a bug.



You are here: Help with QA > How to use Dependency Walker

How to use Dependency Walker (depends.exe)

  1. Learn about Dependency Walker
    • Mozilla is a modular application composed of functions from many libraries (.DLLs).
    • Dependency Walker is an application that builds a hierarchical tree diagram of other programs and all dependent modules. For each module found, it lists all the functions that are exported by that module, and which of those functions are actually being called by other modules.
    • Logs from Dependency Walker can help people solve a few troubling problems. Often users are missing libraries or have the wrong version, this should be easily interpretable from dependency walker output. In other cases, just seeing where mozilla dies can allow triagers to guess what should happen next which enables them to suggest the likely problem.
    • For more information see the distribution site or read its online help.
  2. Download Dependency Walker (for Windows) from http://dependencywalker.com/
  3. Expand it (using winzip or your favorite zip handling application)
  4. Run depends.exe
  5. Open the application which you need to profile
    • Drag the application into the Depency Walker window
    • Drag the application to the Dependency Walker application
    • Type Ctrl-O [or navigate to File>Open...]
      • Enter the path to the appropriate application (usually) mozilla.exe
      • Browse to the appropriate application
  6. Press F7 [or navigate to Profile>Start Profiling...]
  7. Enter parameters for the application (probably -console, possibly -p profilename, possibly -mail ...)
  8. If this is your first time, and unless otherwise instructed, check all the boxes
  9. Select <OK>
  10. The application should now run as usual. In some instances, mozilla might not come to the front, in which case you should alt-tab to it, or minimize dependency walker, or use the taskbar or ...
  11. When you have quit using the application which dependency walker is profiling [or as otherwise instructed] return to dependency walker.
  12. Save the log
    1. Type Ctrl-S [or navigate to File>Save]
    2. Enter a filename
  13. Return to bugzilla and select "Create a new attachment"
  14. See helping with QA for more information about creating an attachment using bugzilla

Command Line syntax for depends.exe

Some people are afraid of graphical interfaces. If you are one of them, please try this instead:
c:\windows> depends /pa1 /pd"c:\program files\mozilla" /pr"-console" /od"desktop\mozilla.dwi" "c:\program files\mozilla\mozilla.exe"

This version is for those of you who prefer html documentation over .hlp
c:\windows> depends /c /a 1 /f 1 /u 1 /ps 1 /pp 1 /po 1 /ph 1 /pl 1 /pg 1 /pt 1 /pn 1 /pe 1 /pm 1 /pf 1 /pc 1 /pb /pd"c:\program files\mozilla" /pr"-console" /od"desktop\mozilla.dwi" "c:\program files\mozilla\mozilla.exe"

Later options override earlier options so /pa1 /pc0 will run Dependency Walker with all options except for pc (Automatically open and profile child processes).