C++:程序版本

C++: program version?

本文关键字:版本 程序 C++      更新时间:2023-10-16

我有一个使用 borland 5.02 运行的C++程序,这是一个 GUI 程序。我需要分析程序及其流程,但问题是我无法找到控件的事件,也无法在互联网上搜索它,因为我正在获取有关其他C++版本的信息(仅供参考,我知道它不是 VC++)。我的按钮代码如下所示:

CONTROL "Output Reports", ID_RUN_BITMAP, "BUTTON", BS_PUSHBUTTON | WS_CHILD | WS_VISIBLE | WS_TABSTOP, 252, 204, 51, 9

它在项目名称.rc文件中

现在,我的问题是:

  1. 我使用的是哪个版本或C++变体?
  2. 我想知道这一点,以便我可以搜索它的教程以查找其事件并正确理解代码。

他们是否有任何其他 IDE 运行比 Borland 5.02 更有用的相同代码?

PS:由于我是一名C# .NET程序员,并且一直使用Visual Studio,因此我发现Borland很难使用。

> BC++ 5.02 来自甚至早于 1998 年C++标准的狂野时代;可用的功能子集功能令人惊讶,但有许多语法特性。可以编写与当前编译器以及BC++ 5.02(甚至BC++ 3.1)等老式编译器兼容的代码,但这并不容易。

如果您需要针对16位平台,那么最好使用免费/廉价的数字火星C++编译器(以前称为Zortech/Symantec C++)或Open Watcom C++。

如果你不这样做,那么有很多更简单的选择。

Dev C++(

gcc 4.8.2/MinGW64-TDM)非常好,但是如果您需要进行GUI开发,那么最好尝试获得Borland C++ Builder(现在是Embarcadero产品的免费赠品版本)。Visual C++ Express是免费的,几乎和gcc和CLANG一样好;它的优点是它可以直接与 .NET 交互,这意味着您可以使用 Visual Basic 或其后继者之一(例如 C#)绘制接口,并用编译为 .NET 程序集的 C++ 编写棘手、简洁的代码。

BC++ 4 和 5 使用的框架称为 OWL(对象 Windows 库);它记录在 BC++ 安装的帮助子目录中的owl50.hlp中。"关于消息和消息队列"部分很好地概述了控制流和消息路由。该框架将大多数消息映射到类(如 TWindow 等)的成员函数,因此很少看到原始窗口消息。标头和资源文件中提到的用户定义 ID 应该在声明响应表的宏调用中重新出现,这应该允许您将对话框项与相应类的成员函数相关联。只要稍微四处走动,顺着你的鼻子走。

如果您正在分析的程序不是为 BC++/OWL 编写的,那么您可能会面临 MFC 代码(因为 BC++ 5.x 附带了 Microsoft 基础类的副本)或带有消息泵、窗口/对话框过程等的原始 Windows API 代码。

grep - 或其他一些功能强大的文本搜索工具 - 无论如何都应该带您到有趣的地方,如果您从 RC 文件中搜索魔术 ID,例如 ID_RUN_BITMAP .

相关文章: