虽然说 C++ Builder 3.0 是 Borland C++ 5.02 的下一个版本,一样支持 MFC ,但若要在 C++ Builder 3.0 下使用 MFC 并不简单。不是直接写个 MFC native Code 并在 Project Option 中再勾选个 MFC Compatibility 这么简单,若你只这样做,保证你在编译时一定会得到一堆的 Warnning 与 Error。
要让你与 BCB 都能够轻松的编译 MFC ,我们所必需的就是自己动点手脚,并将这个动过手脚的 Project 档给放到 Object Repository;之后,你只需要按下选单上的 New 就可以开始你的 MFC in BCB之路了。
Step 1、
New 一个新的 Project
Step 2、
在 Project Option里的 Directories\Conditionals 这一页的Conditionals\Conditional defines中给加入
_X86_ _WINDOWS _MSC_VER=1100 _AFX_PORTABLE _AFX_NOFORCE_LIBS _MT _CRT_PORTABLE _AFX_NO_DEBUG_CRT
|
这几个编译用的参数。
并记得在 include path 加入 $(BCB)\include\MFC 这一项。
Step 3、
接着在 Advance Compilers 这一页里将 MFC Compatibility 给勾选起来,
Step 4、
紧接着,将档案给存起来,里用文字编辑器来修改这个 Project 的 bpr 檔。
找到 CFLAG1 = ...... 这一行
将这一行给为
CFLAG1 = -Od -Hc -w -k -r- -y -v -vi- -c -w-par -w-inl -w-hid -w-aus -g0 -WM -W
再找到 CFLAG3 = ...... 这一行
将这一行给为
CFLAG3 = -Tkh30000 -VF
最后找到 ALLLIB = .... 这一行
将这一行给为
ALLLIB = $(LIBFILES) $(LIBRARIES) nafxcw.lib import32.lib cw32mt.lib
接着就是存盘啰!
Step 5、
这样一来,就可以直接在BCB3下享用MFC啰!
不可不知道
在此范例中,所编译出来的档案将会是 static link 的版本,并非 dynamic link,要怎么样在 BCB 3 下做 dynamic link MFC library 呢?在此先卖个关子,看看 BCB 里所附上的范例吧!
此外,在 BCB 有很多方式来链接 VCL 与 MFC,大致可分为两类 :
1、以 TApplication 为主体,而程序中混合使用 VCL与 MFC 所提供的其它类,如CDC、CPoint、CFile 等等.....。 2、以 MFC 的 CApp 为主体,在选单中呼叫 VCL 所组合而成的 Form。
而这两类要怎么样在 BCB 里完成呢?聪明的读者,动动您的脑筋想想看吧!
|
分享到:
相关推荐
在C++Builder6中编译MFC类是一个技术性较强的操作,它涉及到将Microsoft Foundation Class (MFC)库与Borland C++ Builder (BCB)的Visual Component Library (VCL)结合使用。MFC是微软提供的一个面向对象的C++库,...
在讨论C++ Builder与Visual C++(VC)时,一个重要话题是它们各自封装类库的不同:C++ Builder使用的是VCL(Visual Component Library),而VC则采用MFC(Microsoft Foundation Classes)。VCL采用了更高级别的封装...
一个手工封装的Win32 图形编程C++类, 献给不喜欢MFC 和 C++ Builder 的程序员。 含源码和Vs 2015 工程文件和已经编译后的可执行文件。希望完善这个库的朋友可以和我联系: samuel_ni@yahoo.com , 请随意修改,但原...
开发者使用C++语言在C++Builder环境中构建高质量的软件应用程序,这与用母语在Word上撰写文章相似。C++Builder不仅提供了基础的编程功能,还融入了面向对象编程的核心理念,如封装、继承和多态,使得开发者能够构建...
C++Builder 6 提供了可视化的程序界面设计功能,程序员可以在设计期间真实地看到窗口的样式和布局,包括字体、颜色和定位。该功能可以帮助程序员快速设计和实现复杂的用户界面。 三、程序编译 C++Builder 6 提供了...
作为一款功能全面的开发工具,C++ Builder 提供了从代码编写到程序调试的一整套解决方案,使得开发者能够高效地进行应用程序的开发。 #### 二、C++ Builder 的核心功能 ##### 1. 代码编辑 - **智能代码编辑**:C++ ...
在C++ Builder 6.0中,你可以利用其直观的拖放式设计工具,创建出复杂的窗口应用,并且支持数据库连接,方便进行数据驱动的应用程序开发。 C++ Builder 6.0的重要特性包括: 1. **集成开发环境**:C++ Builder 6.0...
C++Builder 2010 是一款集成开发环境(IDE),专为使用C++语言进行Windows应用程序开发设计。ATL(Active Template Library)是微软提供的一组C++模板类库,用于简化COM(Component Object Model)组件的创建。在C++...
C++ Builder 作为一款全面的 C++ 开发工具,不仅提供了高效的代码编辑、可视化界面设计、程序编译和调试功能,还支持代码优化和辅助程序安装等高级特性。通过使用 C++ Builder,无论是初学者还是有经验的开发者都...
- **效率与性能**:尽管C++Builder在某些情况下的代码效率略低于纯C语言,但其自动优化功能通常能够弥补这一差距。 - **易用性**:C++Builder的可视化界面设计工具和代码编辑器功能强大,使得编程过程更加直观和高效...
在C++编程中,获取程序版本信息是一项常见的需求,它可以帮助开发者了解软件的当前状态,以便更新维护或提供用户信息。在Windows操作系统中,这部分信息通常存储在可执行文件(.exe或.dll)的资源部分,称为VS_...
同时,C++Builder还可以帮助开发者管理程序依赖的动态库文件,确保程序在不同环境下正常运行。 C++Builder还支持生成单一可执行文件或带有动态库的安装程序,使得程序的部署更加灵活。它可以帮助开发者打包所有必要...
3. **程序编译**:作为一款IDE,C++Builder内置了编译器,能够将源代码编译成可执行程序。这个过程是至关重要的,因为它将高级语言转换为机器可理解的语言。C++Builder的编译器以其快速编译速度和代码优化能力闻名,...
在IT领域,上位机程序通常是指运行在个人计算机上,用于控制或通信下位机(如PLC、单片机等嵌入式设备)的软件。本话题聚焦于使用C++语言开发基于USB接口的上位机程序,特别是在Windows平台上利用Visual C++集成开发...
5. **MFC或VCL框架**:C++Builder中的VCL框架提供了大量预先封装的组件,便于快速开发用户界面。 6. **事件驱动编程**:理解事件和事件处理机制,如按钮点击事件、窗口关闭事件等。 7. **内存管理**:C++Builder中...
同时,MFC的兼容性极佳,其源代码可由任何符合ANSI标准的编译器编译,这是C++Builder所无法比拟的。 C++Builder的VCL框架则在组件支持、属性和异常处理方面表现出色,其组件化编程和事件驱动的模式更适合快速应用...
然而,MFC的诞生相对较早,尽管经过多次迭代,其设计思想仍然停留在Windows 3.x时代的遗留,相比之下,VCL(Visual Component Library)则是Delphi和C++Builder共有的组件库,它更适应现代的开发需求,具有更强的...
C++是编译型语言,其编译后的代码直接转化为机器码,运行效率高且独立性好,能够在不同平台上运行。此外,C++在底层编程、系统级编程、数据库和多媒体等领域表现出色,尤其是其对面向对象方法的支持。 1.1.3 面向...