[C++] What's the point of DLL implicit linking?

Started by
1 comment, last by SiCrane 14 years, 2 months ago
When performing implicit linking, a static library is needed along with a DLL. What is the difference between this and using a static library straight out?
Advertisement
The idea is that you get the best of both worlds. You're still using a modular DLL which means you can do things like delay loading, but you don't have to go through the nastiness of calling LoadLibrary and GetProcAddress to call exported functions.
Quote:Original post by MJP
You're still using a modular DLL which means you can do things like delay loading, but you don't have to go through the nastiness of calling LoadLibrary and GetProcAddress
How do you do that? To my knowledge, the loader will load and resolve all symbols at startup. The only thing that you can delay is paging in the actual code, but that's done with all pages in any executable anyway.

Is there a "secret handshake" that you can use to actually delay loading and not needing to look up symbols by hand?
Generally you do it by passing /DELAYLOAD to your linker.
Never knew about that one, thank you :)

This topic is closed to new replies.

Advertisement