问题标签 [c++builder]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
command-line - 为什么 Borland C++ Builder 5 命令行编译器找不到我的文件?
我有一个正在尝试使用 make.exe 编译的 bcb5 项目组。Make 似乎运行良好并生成对 bcc32.exe 的调用,但失败了。这是对 bcc32.exe 的调用,然后是错误。
在我看来,该文件显然是“chelp.cpp”。这里有什么问题?
command-line - 如何通过 BCB5 的命令行将类型库安装到 activex 调色板?
我可以通过 tlibimp.exe 导入类型库,但是当我打开 IDE 时,这些库不在 activex 托盘中。我似乎也不知道如何让它安装到特定的包中。在 IDE 中,“导入类型库”对话框中有一个安装按钮。如何在命令行中执行此操作?
当我在 CBuilder5\Imports 文件夹中查看由 tlibimp 生成的 OCX.cpp 文件时,我看到“错误:创建 (TTVBH3D) 的调色板位图时出错:没有为此 CoClass 注册服务器”。这与问题有关吗?
编辑:
我希望能够在不通过 IDE 的情况下将组件安装到 activex 调色板,以便在构建期间可以自动化该过程。任何解决方案都必须能够完全自动化。
command-line - BCB5 命令行链接器 (ilink32) 找不到 consts.obj?
使用 BCB5 命令行工具编译 makefile 时,链接器给了我这个错误:
我检查了所有编译的文件,没有一个使用或制作这个文件。make 文件没有提到它。Borland 程序文件中没有它。据搜索可以告诉我,它甚至不在我的机器上。当然,可以预见的是,在 IDE 中编译时没有问题。这个链接器在做什么?
使用 make 标志 -B 和 -fproject.bpr 调用项目
command-line - 是否可以通过命令行使用“IDE 托管组件”编译项目?
一段时间以来,我一直在尝试在 BCB5 中构建一些大型项目。我想使用命令行工具,因为它可以将构建时间缩短 50% 以上(在 IDE 中已经需要 4 个小时)。通常,项目在 IDE 中构建得很好,但在命令行中却惨遭失败。我做了一些挖掘并在头文件中发现了这个不错的小注释:
这是说后面的组件只能在IDE打开的情况下构建吗?请告诉我有办法解决这个问题。BCB5开始让我沮丧。
额外信息:
Make.exe 给出了一堆错误,声称头文件和导入的文件之间存在歧义。我很确定头文件应该引用导入的文件,而不是与之比较。
在头文件中:
ComCtrls.hpp 具有变量 TTreeNode。
来自make的错误:
c++ - DynamicArray 抛出 OutOfBounds 异常
我知道这听起来可能很奇怪,但是是的,现在是 2009 年,我需要使用 BCB5 编写小型应用程序 :)
问题是 DynamicArray 在尝试从工作线程中扩展它时抛出 OutOfBound 异常。
我有全局变量,比方说
在主线程中,我检查数组的长度,我得到 0,这没关系(长度未设置)
下面是我的工作线程类
到目前为止,一切都很好。接下来我创建新线程:
这里 Execute() 方法被执行:
我期望的是全局数组被扩展,第 6 个元素的值为 45.5。
但是从主线程中进行更仔细的调查会给出 Length = 0 和 ArrayOfBounds 异常:
谁能告诉我我错过了什么?
csv - 我可以在 C++ Builder 中使用像(MSsql 或 mysql 或 BDE 数据库)这样的 CSV 文件吗?
如果这个问题不是很具体,我提前道歉。
是否可以执行以下操作。
当应用程序加载时
将 CSV 文件的内容读入数据集。
在应用程序运行时
对该数据集进行操作,就像它是 mysql 或 mssql 或 bde 数据库一样(运行查询。插入记录。删除记录。更改记录。)
当应用程序关闭时- 将数据集写回 csv 文件。
csv - 使用 csv 文件的 tclientdataset 的数据提供程序是什么?
我有一个 tclientdataset。它用于从 csv 文件中获取数据。在应用程序运行之前,该 csv 文件可能不存在。我在 tbutton 中有以下代码...
当我运行应用程序时,我收到“缺少数据提供者或数据包”错误。我将数据提供程序设置为“Microsoft Text Driver (*.txt; *.csv)”,但仍然出现错误。
我错过了什么或做错了什么?我真的不想创建 dsn 或做任何手动的预运行工作。我希望应用程序完成所有这些。所以我可以把它移到另一台电脑上,它就可以工作了。
filesystems - 在 C++ 中使用通配符和其他条件搜索子文件夹的 Windows API 方法?
我想我曾经看到可以在代码中使用 Windows 搜索功能的功能。可以使用 sql 查询搜索文件(例如“从文件存储中选择文件名,其中目录 = 'c:\somedir' 和 ('.doc','.txt','.me') 和 datemodified >= '2009-01-01 00:00:00'"
无论如何,即使没有办法通过查询来做到这一点,Windows API 中是否有任何功能或任何简单的代码来完成这种类型的事情?
这似乎是一件显而易见的事情,因为没有一种简单的方法可以做到这一点。
我有一个函数可以查找目录中的所有文件(带有子目录),但它基本上是愚蠢的。它无法使用通配符进行搜索,也无法使用其他条件进行搜索,例如比给定日期新的日期。
如果可能的话,我不想下载任何第 3 方共享软件库来执行此操作。我在 vista 中使用 C++ builder,如果有任何仅适用于 vista 的功能,那没关系。
windows-vista - 为什么我的带有右锚定控件的 Borland C++Builder 5 表单在 Vista 上显示不正确?
我花了很长时间寻找解决方案并现在找到了它,我认为这对于 Stack Overflow 来说是很好的记录。所以我的回答将在这个问题之后紧随其后。
我使用的是 Borland C++ Builder 5。这可能也适用于 Delphi 的等效版本。我在 TPanel 上有一个带有 TButton 的表单。按钮设置为 akRight,akBottom。在 XP 和以前的 Windows 上,一切都很好。在 Vista 上,使用 Aero 时,按钮出现在右侧太远 4 个像素。锚定继续正常工作。
另一个例子是一个 TComboBox 的表单,它有 akTop、akRight、akLeft。该组合在 Vista 上显得太宽了 4 个像素。
回到 Vista 上的“经典”外观使一切看起来都正确。
delphi - Delphi 2009 软件包的 LIB 文件输出位置
在构建 Delphi 2009 组件包时,如何指定哪个目录应包含 C++ Builder 用户所需的生成的 .hpp 和 .lib 文件?