3

Visual C++程序在Visual Studio Express 2008进入主函数前如何加载dll?在其他人开发的项目中,“a.ext:native”加载了一个 dll,但我不知道这是如何配置的。

4

1 回答 1

2

有多种方法可以指示操作系统加载 DLL。最常见的方法是链接到 .lib 文件(通过项目的链接器设置),其中 .lib 是与 DLL 关联的构建时存根。当链接器在链接阶段找到这个.lib 文件时,它就知道该DLL 是必需的,并在内部修改EXE 以告诉操作系统该DLL 必须存在才能使程序运行。

当程序稍后运行时,操作系统首先查找所有需要的 DLL——甚至在开始执行程序代码之前。如果缺少这些 DLL 中的任何一个,操作系统会抛出一个错误,弹出一个错误框,并且程序将无法运行。

也可以动态加载 DLL,但这并不常见。

于 2012-04-17T03:45:04.077 回答