Skip to content
  • Categories
  • Recent
  • Tags
  • Popular
  • World
  • Users
  • Groups
Skins
  • Light
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Default (No Skin)
  • No Skin
Collapse
Code Project
  1. Home
  2. General Programming
  3. C / C++ / MFC
  4. Dependency Walker

Dependency Walker

Scheduled Pinned Locked Moved C / C++ / MFC
c++graphicstoolsquestiondiscussion
5 Posts 4 Posters 0 Views 1 Watching
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • U Offline
    U Offline
    ursus zeta
    wrote on last edited by
    #1

    In the Microsoft SDK, you will find this tool, (Dependency Walker) which appears to be quite sophisticated, but, for which the Microsoft MSDN site provides very little useful information. I'm wondering if any of you programmers have any thoughts or suggestions about its utility. Do any of you use this tool? Feng Yuan, author of, Windows Graphics Programming has this to say about the Dependency Walker: "Dependency Walker (depends.exe) lists all the DLLs your module imports implicitly in a nice recursive way. It helps you to get a clear understanding of how many modules will be loaded into your program when it's running, how many functions are imported. Check this simple MFC program; you will be amazed how many functions are imported without your knowledge. You can use it to check if a program will run on the initial version of Windows 95, which does not have system DLLs like urlmon.dll or provide so many exported functions in ole32.dll." Is there source code available for us inexperienced code nitwits to investigate? I'd like to know how they did it. ...not that I'd actually understand it, but, I'm sure it would make interesting reading.

    N J 2 Replies Last reply
    0
    • U ursus zeta

      In the Microsoft SDK, you will find this tool, (Dependency Walker) which appears to be quite sophisticated, but, for which the Microsoft MSDN site provides very little useful information. I'm wondering if any of you programmers have any thoughts or suggestions about its utility. Do any of you use this tool? Feng Yuan, author of, Windows Graphics Programming has this to say about the Dependency Walker: "Dependency Walker (depends.exe) lists all the DLLs your module imports implicitly in a nice recursive way. It helps you to get a clear understanding of how many modules will be loaded into your program when it's running, how many functions are imported. Check this simple MFC program; you will be amazed how many functions are imported without your knowledge. You can use it to check if a program will run on the initial version of Windows 95, which does not have system DLLs like urlmon.dll or provide so many exported functions in ole32.dll." Is there source code available for us inexperienced code nitwits to investigate? I'd like to know how they did it. ...not that I'd actually understand it, but, I'm sure it would make interesting reading.

      N Offline
      N Offline
      nde_plume
      wrote on last edited by
      #2

      To produce good quality installation programs this tool is essential. You need to use it to determine what DLLs to include with your installation package. You can cross check them here: to eliminate ones that are certain to be on your user's computers. Obvious, legal caveat, don't distribute Dlls that you don't have the right to distribute. Oh, one other thing that occasionally comes along to bite you, sometimes other people's code loads the dll's by hand (LoadLibrary) which is obviously not detected by the walker. This is a major PITA, but it happens, and you have to watch out for it.

      M 1 Reply Last reply
      0
      • N nde_plume

        To produce good quality installation programs this tool is essential. You need to use it to determine what DLLs to include with your installation package. You can cross check them here: to eliminate ones that are certain to be on your user's computers. Obvious, legal caveat, don't distribute Dlls that you don't have the right to distribute. Oh, one other thing that occasionally comes along to bite you, sometimes other people's code loads the dll's by hand (LoadLibrary) which is obviously not detected by the walker. This is a major PITA, but it happens, and you have to watch out for it.

        M Offline
        M Offline
        Michael Dunn
        wrote on last edited by
        #3

        nde_plume wrote: sometimes other people's code loads the dll's by hand (LoadLibrary) v2.1 can trace an app and monitor its LoadLibrary calls. Get it from http://www.dependencywalker.com[^] --Mike-- I'm bored... Episode I bored. 1ClickPicGrabber - Grab & organize pictures from your favorite web pages, with 1 click! My really out-of-date homepage Sonork-100.19012 Acid_Helm

        1 Reply Last reply
        0
        • U ursus zeta

          In the Microsoft SDK, you will find this tool, (Dependency Walker) which appears to be quite sophisticated, but, for which the Microsoft MSDN site provides very little useful information. I'm wondering if any of you programmers have any thoughts or suggestions about its utility. Do any of you use this tool? Feng Yuan, author of, Windows Graphics Programming has this to say about the Dependency Walker: "Dependency Walker (depends.exe) lists all the DLLs your module imports implicitly in a nice recursive way. It helps you to get a clear understanding of how many modules will be loaded into your program when it's running, how many functions are imported. Check this simple MFC program; you will be amazed how many functions are imported without your knowledge. You can use it to check if a program will run on the initial version of Windows 95, which does not have system DLLs like urlmon.dll or provide so many exported functions in ole32.dll." Is there source code available for us inexperienced code nitwits to investigate? I'd like to know how they did it. ...not that I'd actually understand it, but, I'm sure it would make interesting reading.

          J Offline
          J Offline
          Jason Henderson
          wrote on last edited by
          #4

          Its also helpful in tracing errors. You can sometimes find what function the error occurred in by looking up the address in Depends.

          Jason Henderson
          start page ; articles henderson is coming henderson is an opponent's worst nightmare * googlism *

          U 1 Reply Last reply
          0
          • J Jason Henderson

            Its also helpful in tracing errors. You can sometimes find what function the error occurred in by looking up the address in Depends.

            Jason Henderson
            start page ; articles henderson is coming henderson is an opponent's worst nightmare * googlism *

            U Offline
            U Offline
            ursus zeta
            wrote on last edited by
            #5

            I really appreciate the response, thank you. The tip about the LoadLibrary function and the website address were especially useful. Thanks.

            1 Reply Last reply
            0
            Reply
            • Reply as topic
            Log in to reply
            • Oldest to Newest
            • Newest to Oldest
            • Most Votes


            • Login

            • Don't have an account? Register

            • Login or register to search.
            • First post
              Last post
            0
            • Categories
            • Recent
            • Tags
            • Popular
            • World
            • Users
            • Groups