背景
我们在开发程序的时候,通常会使用第三方库,但是并不是所有的第三方库都会提供静态库文件,而是提供动态库文件。这样,我们的程序就需要相应的DLL文件才能加载启动。
现在,我们想大家介绍一种DLL延迟加载技术,使用延迟加载方式编译链接可执行文件。这样,可执行程序就可以先加载执行,所依赖的DLL在正式调用时才被加载进来。
这样做的好处就是,我们可以把必需的DLL文件以资源的形式包含到我们的程序中,并使用DLL延迟加载技术延迟加载必需的DLL。这样,在正式调用必需的DLL之前,程序都是可以正常执行的,我们可以在程序运行的时候,就把在资源中的DLL释放到本地,所以,程序所有功能就可以正常执行了。我们只需把EXE文件发送给用户,而不需要附加DLL文件了,也不需要担心程序会丢失DLL文件。
参考文档和完整的文档和源码下载地址: