【发布时间】:2010-08-26 17:38:33
【问题描述】:
我们有一个非常大的 MFC 应用程序,解决方案中有 16 个项目。每个项目都是一个 DLL。其中四(4)个项目就是我们所说的“网络”。在每个网络中,都有一个我们将称为 X 的对话框。此对话框在每个网络中都非常不同,但对话框本身的名称在每个 resource.h 中都是相同的。在 resource.h 中,它们也具有相同的 ID(值)。
现在发生的事情是,当我在网络 1 上并使用对话框 X 加载类时,它会尝试使用来自网络 2 的对话框。由于它们没有所有相同的控制,它在 DoDataExchange 中尝试查找其他网络中不存在的控件时崩溃。
有人知道是什么原因造成的吗?尝试更改网络中不起作用的名称并没有改变任何东西,因为它使用了 ID...
我一直认为 DLL 使用的是它自己的 resource.h,但现在看来并非如此......
有人可以帮忙吗? 谢谢
【问题讨论】:
-
这篇文章好像是说,每个dll先看自己,再看其他地方……(support.microsoft.com/kb/150121/en-us)。是知道这个过程的顺序的一种方式吗?