C++ Builder 中如何使用现成的 MFC 类?

Ascn 2002-03-08 06:03:37
我有一个VC编写的MFC类 CCoolControls,在C++ Builder 中使用时,设置工程的“MFC 兼容支持”后,在编译时出现 预编译错: 大意是指在 MFC 应用中不能再包含头文件 Windows.h 。我查了工程中所有文件甚至CB的所有头文件,除发现包含了许多“Windows.hpp”外,未能发现哪里包含了“Windows.h”。

而在 Windows.hpp 中,根本没有定义过“_WINDOWS_”,不知是哪里有问题。

请问我该如何解决?

...全文
45 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
gushuheng 2002-04-11
  • 打赏
  • 举报
回复
跟我一样!
txf168 2002-03-12
  • 打赏
  • 举报
回复
bcb提供了一个转换的工具,在tools->Vc ...(你可以看看) ;转化后会生成新的项目文件,你把新的项目文件中关于初始化工具栏的东东删掉或改,把vc的mfc的那个头文件给注释掉,好象可以用,但警告多!
kingcaiyao 2002-03-12
  • 打赏
  • 举报
回复
我也碰到这个问题,但到现在还没有解决。
Ascn 2002-03-11
  • 打赏
  • 举报
回复
To All:
感谢大家!

我已找到在文件 "System.hpp" 中包含了 "Windows.h" , 而且大量与 VCL 相关的头文件调用了它。 这个问题已解决,可新问题又有了:
我的DLL是含有MFC类的,是用“MFC Appwizard DLL/Regular DLL with MFC statically linked”的方式创建的。其中仅包含一个大类(含一些小类),
定义类时用了“__declspec(dllexport)”,在类外定义了一个该类的引用:
__declspec(dllexport) CClass& myClass;

生成的DLL在VC 的MFC 中使用正常。我只需用 myClass 即可调用类中的成员函数。但在C++ Builder 中不行,总提示:
Unresolved external 'MyFunction()' referenced from D:\MyWorks\Test\Test.obj

请问各位,我该如何解决?我的原有程序(MIS 系统)用的是CB,不得不用CB来写。


我不懂电脑 2002-03-08
  • 打赏
  • 举报
回复
可能你没发现而已
CCLIS 2002-03-08
  • 打赏
  • 举报
回复
改写成BCB版本的,应该不是很复杂。

可能只是INCLUDE的不同,MFC中的函数,BCB支持得很好啊。
Behard 2002-03-08
  • 打赏
  • 举报
回复
用 Dll 导出类吧!

552

社区成员

发帖
与我相关
我的任务
社区描述
C++ Builder 茶馆
社区管理员
  • 茶馆
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧