EQuestionAnswers.com Computer/Electronics Questions and Answers
C, C++, VC++, COM/DCOM, DLL and more
#Login #Sign up  Facebook Twitter TGoogle+
 

#Previous question #Index of DLL Questions #Next question

When in an application we use functions which has been imported from a DLL(say DLL1) then the application is dependent on that DLL or DLL1. Thus application has a child dependency on DLL1. Now suppose for some purpose DLL1 imports some functions from another DLL say DLL2. Then this DLL1 has a dependency on DLL2. Thus the total hierarchy of dependency chain is like

+ Application
+ DLL1
+ DLL2

Example:
Suppose our application Application1 uses a standard C library call fopen() which has been imported from C runtime (msvcrt.dll). Again this library DLL is dependent on Win32 subsystem for fopen(). It actually calls Win32 API CreateFile() to kernel32.dll. Again this CreateFile() Win32 API actually calls NtCreateFile() in Ntdll.dll and finally Ntdll.dll resolves this call by invoking a software interrupt to operating system kernel.
Thus dependency chain looks like:

+ Application 1 (fopen() call)
+ msvcrt.dll (CreateFile() call)
+ kernel32.dll (NtCreateFile() call)
+ Ntdll.dll (software interrupt)
- NT OS Kernel

Microsoft Visual Studio 6.0 has a nice tool to explore the dependency of DLLs and executables named Dependency Walker. Location \Program Files\Microsoft Visual Studio\Common\Tools\DEPENDS.EXE

You have viewed 1 page out of 27. Your DLL learning is 0.00% complete. Login to check your learning progress.

 Vote 0

Similar topics related to this section

# DLL Frequently Asked Questions
# Frequently Asked Questions - DLL-files.com
# Dependency Walker Frequently Asked Questions (FAQ)
# Top 10 DLL Questions !
# DLL COM DCOM Interview Questions and Answers

* #1 webmaster Thu 27 Feb/2014 14:32:51(GMT)  Like 0 Unlike 0

Dear Users,

We are pleased to inform you that a forum/blog has been incorporated with www.mybestnotes.co.in. You are welcomed to add your comments, requests, codes, solutions and feedback to it. Please login(if already a member) or signup(for free) to avail to this facility.

Regards,
Webmaster

Your message goes here:

Name:Guest
Email:anonymous@unknown.com
My Post:*
Secutiry Code: ******  *
Preview this compose before posting this in discussion forum.
 
Note:
  1. Use [Sxx] code to show smiles. Example [S02]
  2. Use [URL ], example [URL http://www.google.com/]
  3. To display code or un formatted text use [CODE] [/CODE]. Example: [CODE] printf("Hello world"); [/CODE]
 [S01]   [S02]   [S03]   [S04]   [S05]   [S06]   [S07]   [S08] 
 [S09]   [S10]   [S11]   [S12]   [S13]   [S14]   [S15]   [S16] 
 [S17]   [S18]   [S19]   [S20]   [S21]   [S22]   [S23]   [S24] 

Note: Only members are allowed, * fields are mandatory.