Gold mine of Visual C++ tricks!
Archive for July 13, 2008
How to identify the module load order?
Jul 13th
![]()
When an application starts, windows loads the necessary dll files to the system memory – “in required order”. But how to get the dll load order of perticular application? You’ve already seen – When we start the application via debugger, it will output the module load order info to the watch window. Have a look at it,
Loaded 'ntdll.dll', no matching symbolic information found. Loaded 'C:\Windows\System32\kernel32.dll', no matching symbolic information found. Loaded 'C:\Windows\System32\dbghelp.dll', no matching symbolic information found. Loaded 'C:\Windows\System32\msvcrt.dll', no matching symbolic information found. Loaded 'C:\Windows\System32\advapi32.dll', no matching symbolic information found. Loaded 'C:\Windows\System32\rpcrt4.dll', no matching symbolic information found. Loaded 'C:\Windows\System32\mfc42.dll', no matching symbolic information found. Loaded 'C:\Windows\System32\user32.dll', no matching symbolic information found. Loaded 'C:\Windows\System32\gdi32.dll', no matching symbolic information found.
Seems Good! But, is there any easy method?
![]()
Yes! Take menu item, Debug -> Modules. And it will show the dialog of all loaded modules. By default the modules are sorted in load order. See the screenshot.

![]()
Now you don’t need to jump into that watch window for searching the module load order.
![]()
Targeted Audience – Beginners.
I am Back!!!
Jul 13th
