hi all,

a stupid question.. when i start a simple application i've written i see that it load in memory many more DLL than i use...
For example it load WS2_32.DLL and i don'use any socket function...
Could it be becouse i've left in many "extern API" declaration on my .inc file that i don't use (USING TASM) ?
Posted on 2003-09-01 13:14:11 by Bit7
Could be that one of the functions you are using in another DLL is calling one in that one. It would be a dependancy chain thing. Try running a dependancy check on the program, that will tell you which ones definitely need to be loaded.
Posted on 2003-09-01 13:24:13 by donkey
I think (please correct me if I'm wrong) that both wsock32.dll and ws_32.dll are not the implementations of WinSock, but some "interface" libraries that, in turn, load a bunch of other dlls to do the actual work.
Posted on 2003-09-01 14:41:25 by QvasiModo

about the extern APIES declared in inc file and not used, i was right, after commented them the exe size decrease and relative dll are no more called. But as donkey said, some dll with functions i don't use are still loaded in memory for a chain-reason. They are just 2, it's not a problem. :)

Posted on 2003-09-01 16:07:24 by Bit7
Note thats a linker problem.
Posted on 2003-09-01 16:52:19 by Eóin