Phobos and Tango deep dependancies

Sean Kelly sean at f4.ca
Tue Oct 2 10:03:15 PDT 2007


Jascha Wetzel wrote:
> Gilles G. wrote:
>> And the dependancies are listed below:
>>  * 10 Always loaded DLLs:
>> MPR.DLL, ADVAPI32.DLL, GDI32.DLL, KERNEL32.DLL, MSVCRT.DLL, NTDLL.DLL, 
>> RPCRT4.DLL, SHELL32.DLL, SHLWAPI.DLL, USER32.DLL
>>
>>  * 108 Delay loaded DLLs:
>> ACTIVEDS.DLL, ADSLDPC.DLL, ADVPACK.DLL, APPHELP.DLL, ATL.DLL, 
>> AUTHZ.DLL, BROWSEUI.DLL, CABINET.DLL, CDFVIEW.DLL, CERTCLI.DLL, 
>> CFGMGR32.DLL, CLUSAPI.DLL, COMCTL32.DLL, COMDLG32.DLL, CREDUI.DLL, 
>> CRYPT32.DLL, CRYPTUI.DLL, CSCDLL.DLL, DBGHELP.DLL, DEVMGR.DLL, 
>> DHCPCSVC.DLL, DNSAPI.DLL, DUSER.DLL, EFSADU.DLL, ESENT.DLL, 
>> GDIPLUS.DLL, HLINK.DLL,HNETCFG.DLL ,IMAGEHLP.DLL, IMGUTIL.DLL, 
>> IMM32.DLL, INETCOMM.DLL, IPHLPAPI.DLL,
>>  LINKINFO.DLL,LZ32.DLL ,MFC42U.DLL ,MLANG.DLL , MOBSYNC.DLL, 
>> MPRAPI.DLL, MPRUI.DLL, MSASN1.DLL, MSGINA.DLL, MSHTML.DLL, MSI.DLL, 
>> MSIMG32.DLL, MSJAVA.DLL, MSLS31.DLL, MSOERT2.DLL, MSRATING.DLL, 
>> MSSIGN32.DLL, MSVCP60.DLL, MSWSOCK.DLL, NETAPI32.DLL, NETCFGX.DLL, 
>> NETMAN.DLL, NETPLWIZ.DLL,
>>  NETRAP.DLL, NETSHELL.DLL, NETUI0.DLL, NETUI1.DLL, NETUI2.DLL, 
>> NTDSAPI.DLL, NTLANMAN.DLL, ODBC32.DLL, OLE32.DLL, OLEACC.DLL, 
>> OLEAUT32.DLL,  OLEDLG.DLL, OLEPRO32.DLL, POWRPROF.DLL, PRINTUI.DLL, 
>> PSAPI.DLL, QUERY.DLL, RASAPI32.DLL, RASDLG.DLL, RASMAN.DLL, 
>> REGAPI.DLL, RTUTILS.DLL,  SAMLIB.DLL, SCECLI.DLL, SECUR32.DLL, 
>> SETUPAPI.DLL, SHDOCVW.DLL, SHSVCS.DLL, TAPI32.DLL, URLMON.DLL, 
>> USERENV.DLL, USP10.DLL, UTILDLL.DLL, UXTHEME.DLL, VERSION.DLL, 
>> W32TOPL.DLL, WINHTTP.DLL, WININET.DLL, WINMM.DLL, WINSCARD.DLL, 
>> WINSPOOL.DRV, WINSTA.DLL, WINTRUST.DLL, LDAP32.DLL, WMI.DLL, 
>> WS2_32.DLL, WS2HELP.DLL, WSOCK32.DLL, WTSAPI32.DLL, WZCDLG.DLL, 
>> WZCSAPI.DLL, WZCSVC.DLL
>>
>>
>> This may be compared to phobos : 5 always loaded DLLs and 112 delay 
>> loaded DLLs.
> 
> Actually, Phobos and Tango executables only depend on KERNEL32.DLL and 
> USER32.DLL. The rest of the DLLs you listed are dependencies of 
> KERNEL32.DLL and USER32.DLL. KERNEL32.DLL uses NTDLL.DLL, USER32.DLL 
> uses GDI32, ADVAPI etc. Especially USER32.DLL spans a whole tree of 
> mostly delay loaded dependencies. The exact dependencies of USER32.DLL 
> vary between windows versions.

Tango also links shell32.lib on Win32, which is responsible for the few 
additional dependencies there.


Sean



More information about the Digitalmars-d mailing list