问题标签 [rad-studio]

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.

0 投票
1 回答
116 浏览

delphi - 全线程 IOmniParallelTask​​ 的“紧急”终止

背景

我有一个单元测试,我在其中检查我的处理程序代码代码在多线程压力期间是否表现良好:

如果并行线程未能在预期时间内完成,则说明出现问题并且我的检查失败。不幸的是,如果并行任务挂起,它永远不会结束,并且我的单元测试会冻结,因为在我等待永无止境的并行任务完成的例程结束时释放了 bt 接口。

所以我需要以邪恶的方式关闭我的并行任务。

注意 1:这是一个单元测试,我并不真正关心线程清理:如果单元测试失败,无论如何都需要修复一些东西。我只是不希望我的整个单元测试套件挂起/冻结,而只是报告失败并继续我的套件中的下一个测试。

注意 2:Numthreads(1) 可以省略或任意数量的线程。

:如何IOmniParallel强制终止任务?

0 投票
0 回答
82 浏览

android - Firemonkey TNotificationCenter 不起作用 C++Builder 10.4

我是 Firemonkey 的新手。我正在使用 C++Builder 10.4 悉尼。目标平台是安卓。

我的代码是:

时间到了,什么也没有发生。

我尝试将 Android 服务添加到我的项目中,但没有弹出对话框(10.4 修复了对话框还是这是一个错误?)。

我使用链接器libandroidService.a和手动添加了 Android 服务System.Android.service.hpp,并将此代码放入表单的OnCreate事件中:

但是,仍然没有任何反应。

我试过PresentNotification()了,现在才通知。

谁能帮我解决这个问题?

0 投票
1 回答
135 浏览

delphi - 在组件安装期间调试包

我需要在 Embarcadero RAD Studio XE5 中构建为 BCB6(Borland C++ Builder 6)制作的旧组件。项目是 CPP 项目,组件代码包含在 *.PAS 文件中。该项目包含6个包:

  • 三个包一个设计时间
  • 三包运行时

首先,我构建包运行时。之后,我开始构建和安装使用包运行时的包设计时间。并且一个设计时包在安装过程中出现了问题:

在此处输入图像描述

我找到了导致此问题的运行时包。我的问题是如何找到并解决以下错误?毕竟,安装包时,我无法启动调试器,查看堆栈跟踪,什么都没有。有什么选择?谢谢。

0 投票
1 回答
113 浏览

delphi - Rad Studio 10.4 中的自定义帮助

有没有办法将我自己的自定义帮助添加到 RAD Studio 10.4 的帮助菜单中?在菜单选项“帮助”| “第三方帮助”,我使用的几个第三方库都为其产品添加了帮助。有什么方法可以在那里添加我自己的帮助参考资料吗?

0 投票
0 回答
592 浏览

delphi - 调试运行时包的问题

这个问题建立在这个问题之上。我的 IDE - RAD Studio XE 5 Architect Update 2。我的问题:

安装设计时包时,正在使用的运行时包中会引发异常。为此,我需要调试这个运行时包。尝试调试包时,断点始终为绿色,并且在事件日志中打印文本:“无调试信息”。我的步骤:

  • 打开IDE并下载有问题的运行时包
  • 使用 IDE 应用程序为其分配主机
  • 开始调试
  • 等待 IDE 的第二个副本启动
  • 在新的 IDE 实例上,打开导致问题的设计时包
  • 开始安装设计时包

我看到堆栈跟踪和异常,但断点不起作用。

我进行了测试并创建了项目组:

  • 有问题的运行时包
  • 从一个程序测试应用程序(VCL exe),该程序通过程序 LoadPackage加载有问题的运行时包
  • 在问题运行时包中设置断点
  • 运行调试器

精彩的!断点工作!

我的问题:如何通过主机应用程序(IDE 第二个实例)在调试有问题的运行时包时设置工作断点?

谢谢。

PS:属性我的运行时包:

  • 项目选项 -> Delphi 编译器 -> 编译器 -> 断言 -> True
  • 项目选项 -> Delphi 编译器 -> 编译器 -> 调试信息 -> 调试信息
  • 项目选项 -> Delphi 编译器 -> 编译器 -> 本地符号 -> True
  • 项目选项 -> Delphi 编译器 -> 编译器 -> 符号参考信息 -> 参考信息
  • 项目选项 -> Delphi 编译器 -> 编译器 -> 使用调试 .dcus -> True
  • 项目选项 -> Delphi 编译器 -> 链接 -> 调试信息 -> True
  • 项目选项 -> Delphi 编译器 -> 链接 -> 包括远程调试符号 -> True
  • 项目选项 -> Delphi 编译器 -> 链接 -> 映射文件 -> Publics
  • 项目选项 -> C++ 编译器 -> 调试 -> 调试信息 -> True
  • 项目选项 -> C++ 编译器 -> 调试 -> 调试行号信息 -> True

在输出我有文件: *.bpi, *.bpl, *.drc, *.lib, *.map, *.pdi, *.tds 。

PSS:使用项目组调试时,没有抛出异常,仅在安装设计时包时出现问题

更新 1:

我看到了某种模式。* .dpk (delphi) 项目调试没有问题。一个项目就是一个项目 *.cbproj (cpp) 有调试问题。以下是文件列表:

项目 test_runtime_package.dpk,包含文件:

  • test_runtime_package.dproj
  • test_runtime_package_delphi.pas

test_runtime_package.dpk

test_runtime_package.dproj

test_runtime_package_delphi.pas

项目 test_runtime_package.cbproj,包含文件:

  • test_runtime_package.cpp
  • test_runtime_package_delphi.pas

test_runtime_package.cbproj

test_runtime_package.cpp

文件 test_runtime_package_delphi.pas 与项目 test_runtime_package.dpk 中的相同。

0 投票
1 回答
309 浏览

delphi - Why I get access violation error from TBitmap.LoadFromStream method in datasnap ISAPI dll?

I've developed a datasnap rest server application in RAD Studio 10.3.2. In one of my server methods I receive an image from the client app. The image data is a base64 encoded string as a json value. My method is something like this:

When I build the project as a standalone firemonkey app (.exe file) everything works fine but when I build an ISAPI dll and deploy it in IIS I got an access violation error in the line that I added a comment to it. What's wrong? I'm really confused!

P.S.

  1. I saved both InputStream and OutputStream somewhere so that I get sure that I receive the stream and decode it properly and both streams are just fine.

  2. The variable theImage: TBitmap; is an object of FMX.Graphics.TBitmap class, because my stand-alone GUI is a firemonkey application.

0 投票
1 回答
185 浏览

delphi - 如何在 Delphi 中使用 tcxGrid 从 2 个表中创建一组数据?

我正在尝试在 Delphi RAD STUDIO 中使用 TcxGrid 实现一个功能:

我有 2 个表,CARS BRANDS 和 MODELS,我想显示所有汽车品牌和型号(在网格上),并让用户选择任何汽车品牌(宝马、梅赛德斯、法拉利)(之前在 CAR BRANDS 表上创建)然后为每个品牌选择任何型号。例如,用户选择 BMW 并决定为该品牌选择模型 1A、2B、3C(之前在 MODELS 表中创建)。然后,选择法拉利和该品牌的 1A、3C、4D 模型。最后,他单击“保存”,它将创建第三个表:CAR BRANDS/MODELS,其中包含以下信息:

(BMW, 1A);(BMW,2B);(BMW,3C);(FERRARI,1A);(FERRARI, 3C);(FERRARI, 4D)

我正在寻找一些方法来实现这一点,谢谢你的建议!

0 投票
2 回答
185 浏览

c++ - 动态使用预处理器 DATE

我正在尝试__DATE__在 C++Builder 中使用,我需要动态使用它。例如,如果用户单击一个按钮,包含的标签__DATE__将在系统日期之后更新。

我现在这样做了:

这是一个设置日期的函数,称为DateTime(). 对于按钮,我已经做了点击事件,但我需要DateTime()动态运行。

0 投票
0 回答
38 浏览

ide - Codegear Rad Studio C++Builder 2007 无法在 Windows XP SP2 上打开

我一直在另一台基于 Windows XP(32 位)的 PC 上将 Rad Studio 用于一些旧项目。所以,我想把我的项目搬到新电脑上。但是,设置后,bds.exe 没有打开。相同的安装文件适用于 Windows 10 PC(64 位),但我无法在 Windows XP 计算机上打开。

当我试图立即打开它的关闭并从 Visual Studio 2005 中提供即时调试选项时。此外,它还提供了一些错误代码。但是,我找不到任何解决此问题的方法。当我想首先打开以下屏幕时。 即时调试器

然后,如果我单击“否”,它将关闭。如果我单击是,则会出现以下屏幕。 错误代码

注意:关闭即时调试无助于打开 bds.exe 。

0 投票
1 回答
165 浏览

delphi - FindFirst 找不到所有扩展名为 ~1~ 的文件和其他文件

SysUtils.FindFirst找不到所有带有扩展名~1~和其他奇怪文件扩展名的文件,例如:Unit1.dfm.~1~

如何使此代码查找所有文件,任何扩展名?