0

How does dynamic linking happen in detail? And what does DLL have inside? I know that DLLs have machine instructions just like executables but what I don't understand is how does the executable locate the functions from the DLL by name. Is there some step in the linking where the names get converted into addresses? And what other stuff DLL contains than just instructions?

  • Look here: http://stackoverflow.com/questions/12619214/a-request-for-good-tutorials-on-dll-programming/12619656#12619656 but this is more a programming question. – Vomit IT - Chunky Mess Style Feb 20 '17 at 22:49
  • the OS implements a dynamic linker that programs may use to request a given library. They are responsible for loading the dll into ram and linking it to the executable code. https://en.wikipedia.org/wiki/Dynamic_linker . DLLS contain a table that provides the name of the function (at least in some cases) and the windows API always ships with the same names, though the hex offset usually changes https://en.wikipedia.org/wiki/Dynamic-link_library#Symbol_resolution_and_binding . – Frank Thomas Feb 20 '17 at 23:16
  • 1
    And here -1 from me for a cross-posting: http://softwareengineering.stackexchange.com/questions/342645/how-do-dlls-and-dynamic-linking-work-exactly – Leo Chapiro Feb 21 '17 at 10:19

0 Answers0