【发布时间】:2010-03-04 19:44:43
【问题描述】:
如果我在 A.dll 中有全局变量,这取决于 B.dll 中的全局变量,是否保证 B.dll 将在 A.dll 之前加载?我在 Visual Studio 中制作了两个示例 dll 项目,并将 A.dll 与 B.dll 链接起来,似乎首先加载了 B.dll。那么这种行为是否得到保证?
【问题讨论】:
标签: winapi visual-c++ dll
如果我在 A.dll 中有全局变量,这取决于 B.dll 中的全局变量,是否保证 B.dll 将在 A.dll 之前加载?我在 Visual Studio 中制作了两个示例 dll 项目,并将 A.dll 与 B.dll 链接起来,似乎首先加载了 B.dll。那么这种行为是否得到保证?
【问题讨论】:
标签: winapi visual-c++ dll
这种行为是由操作系统保证的,否则就不可能编写正确的 dll 加载代码。特别是,如果A.dll 导入B.dll,那么当动态链接器尝试加载A.dll 时,它会看到该依赖关系并首先将B.dll 加载到进程中。
【讨论】: