如果以前有人问过这个问题,请原谅我,但我保证我看了很多遍,找不到任何东西(也许我只是想不出正确的搜索词)。
情况是这样的,我有一个基于 MFC90 构建的 DLL,它导出一个类(并在头文件中使用 MFC 对象,如CString
、POSITION
等),我们将此 DLL 称为ONE。由于我只能访问 VS2010,因此我仅限于在 MFC100 上构建基于 MFC 的 DLL 和应用程序,而且我还有另一个 DLL,我们称之为TWO,它使用从 DLL ONE导出的对象。到目前为止,它似乎工作正常,但我想知道在将使用 MFC100 构建的 DLL 链接到使用 MFC90 构建的 DLL 时,我是否真的应该期待一些错误或奇怪的怪癖,或者这是一个微不足道的问题。
**注意事项* *
- 我没有重建 DLL ONE的选项。
- 我一直在寻找使用 VS2010 在 MFC90 上构建应用程序的免费选项,但我还没有成功找到解决方案。我读到我可以简单地下载 Windows SDK 6.01,但是当我从 Microsoft 下载它时,其中没有 MFC 的痕迹。
- 我没有使用 VS2008 的选项(除了 VS2008 Express,它不附带 MFC)。
- 这都是公司专有代码,所以我不能发布任何源代码。
**编辑* *
- 我应该提到 DLL TWO导出的函数将指向 DLL ONE导出的类的指针作为参数。
- 所有导出的类都不是从 MFC 对象派生的。导出的类仅使用 MFC 对象作为成员变量、成员函数参数或内部成员函数。我不能说这是 100% 确定的,但我不相信这些类使用的不仅仅是,或者像&这样的
CString
POD 结构。POINT
POSITION