lucasg/Dependencies

Some questions about GUI

KillerJmc opened this issue · 2 comments

image

  1. What does the arrow mean here? What is the relationship between the dll on the right of the arrow and the dll on the left?
  2. What is the relationship between those dlls in the rectangular box and the previous dll (api-ms-win-crt-runtime-11-1-0.dll)?
  1. The arrow pertains to a Windows API set. The file encryptor.exe has a dependency on api-ms-win-crt-runtime-l1-1-0.dll. However, this file does not actually exist. When the Windows loader notices that a DLL name starts with api-, it figures out which DLL to actually load. In this case, that is ucrtbase.dll. You can learn more about API sets here: https://learn.microsoft.com/en-us/windows/win32/apiindex/windows-apisets.

  2. The DLLs in the rectangular box are dependencies of ucrtbase.dll.

You can learn more about API sets here: https://learn.microsoft.com/en-us/windows/win32/apiindex/windows-apisets.

@adang1345 After I read this article, I had a problem: While Windows loading a dll whose name starts with api-, what does it means? Are there some header files inside the dll which correspond with the real implementation dll or this dll is just a symbol that indicates which module should be loaded from the real implementation dll?