问题标签 [delphi-10.2-tokyo]

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 回答
443 浏览

delphi - 未在设计器中显示的已发布属性

在以前的 Delphi 版本中,我的自定义表单显示了它的已发布属性。

但是,我遇到了 Delphi 10.2 Tokyo 的问题。具体来说,我没有看到调用本文中找到的适当方法的好方法

总而言之,需要调用 to RegisterCustomModule(),但是,在此处DesignIntf描述的单元中,没有(虽然有和),基础自定义模块也继承自,但没有(使用 FMX 作为我的框架)。TCustomModuleTBaseCustomModuleTCustomModuleClassTInterfacedObjectTForm

注册 FMX 表单以在最新版本的 Delphi 中显示已发布属性的正确方法是什么?

0 投票
1 回答
514 浏览

ios - Delphi 10.2 Tokyo BluetoothLE 未检测到任何设备

我最近将 Delphi 从柏林升级到东京,在 Delphi 10.1 Berlin 中,我可以放下一个BluetoothLE组件连接 a OnEndDiscoverDevices,一旦我.DiscoverDevices(ATimeout: Integer)在超时后打电话,我就把设备放进去OnEndDiscoverDevices,它工作得很好,我在办公室里拿起设备。

但是,在 10.2 Tokyo 中,当我做同样的事情时,OnEndDiscoverDevices我没有收到任何设备。

我复制了柏林的所有蓝牙源代码,并在东京编译,然后再次运行。

XCode:8.3.3
PAServer:19.0
iOS SDK:10.3.1
iOS 版本:10.3.1

0 投票
2 回答
4412 浏览

delphi - 使用 Indy TIdHTTP 下载文件

我目前有一个程序可以从我的 VPS 下载文件并将其解压缩。我想让它直接从原始网站下载,但它不想工作。我想让它下载这个链接:

https://bintray.com/oxidemod/builds/download_file?file_path=Oxide-Rust.zip

而不是这个:

http://41.185.91.51/RSM/Oxide-Rust.zip

编辑:使用此链接:

https://dl.bintray.com/oxidemod/builds/Oxide-Rust.zip

即使使用 SSL 协议也不起作用。

我正在使用 RAD Studio 10.2 Tokyo。

我找到了以下帖子,但我正在努力将其添加到我当前的项目中:

使用 TIdHTTP INDY 10 下载的文件

这是我当前的项目代码:

0 投票
1 回答
1552 浏览

delphi - Delphi 虚拟构造函数

我阅读这篇文章是因为我想了解它的用处,class of [ClassName]并且我看到它们声明了一个虚拟构造函数。所以我做了一个测试,你可以在这里看到:

在此处输入图像描述

我(从那篇文章中)了解到,当我在编译时不知道要构造的类并且可以使用class of. 在我上面显示的代码中,有什么区别?

如果我将 TFirst 构造函数声明为虚拟而不覆盖 TSecond,我当然会收到警告,我可以通过重新引入或覆盖来删除它。但是构造函数不是被自动覆盖了吗(看左边的代码)?我认为他们是等价的。

0 投票
0 回答
384 浏览

delphi - 将 memtable 中的计算字段与 datasnap 服务器一起使用

我们在数据快照服务器上有一个带有计算字段的 FDquery。

在使用 FDMemtable 的客户端上打开查询时,计算字段为空。

Q:我们如何通过datasnap将计算出来的数据发送给客户端?

0 投票
2 回答
150 浏览

arrays - 动态记录数组无法展开

我创建了一个动态记录数组,使用此 actionexecute 方法进行扩展:

该数组称为在单元 ( ) 中声明的 PrjRecArray,PrjRecArray : Array of TPrjRec;并且不会以其他方式初始化。PrjSg 是包含在表单中的 tstringgrid,用于显示记录。

当我使用 AddTeamActionExecute 添加更多记录时,stringgrid 的大小会继续正确增加。然而,虽然 PrjRecordArray 正确扩展为四个记录,但程序显然在第五次迭代中在设置长度行处失败。执行挂起并且从不显示第二个显示消息框。

我错过了正确使用动态数组的一些步骤吗?

0 投票
1 回答
649 浏览

delphi - FastReport 格式函数 unicode 错误

我在 Delphi 10.2 上使用了 fastreport 5.4.6,但是当使用 unicode args 显示 Format 函数时,fastreport 出现错误。这是错误

使用文本创建备忘录 = [Format('%s' , ['nghìn tỷ'])] nghìn tỷ</p>

它将显示“nghìn t? nghìn tỷ”

如何修复它。请帮我。

编辑 我在 fastreport 的 fs_itools.pas 中更改函数 VariantToVarRec

改变后

[格式('%s' , ['một nghìn tỷ'])]

将显示“một nghìn tỷ”。我不知道如果我改变功能会发生什么(我是delphi的新手)

0 投票
1 回答
382 浏览

delphi - 函数初始化代码是否从西雅图更改为东京?

我正在将代码从 Delphi 10 Seattle 升级到 Delphi 10.2 Tokyo,并获得了很多Value assigned to ... never used关于作业的 H2077 提示。
(即使在过去明确添加这些以消除“可能没有价值”警告的地方)。

这些都是初始化的函数,如:

或者:

编译器在检测这些方面变得更聪明了,还是在函数的初始返回值方面发生了一些变化?

我们总是“开启”这些提示,我总是构建(而不是编译)。

示例函数 (1) 在西雅图构建时没有提示,
但在东京H2077 Value assigned to 'GetDatabaseDialect' not used的第一行给出提示。Result := 0

来自似乎没有为东京优化的第三方库的示例(2),
说明了枚举类型的情况:
H2077 Value assigned to 'TppTemplate.StreamType' not used
请注意,将赋值更改为Result := ftASCII;不会使提示消失(我最初假设它与第一个枚举值不正确)。

共同点似乎是在 try/finally 块中的结果分配。

0 投票
1 回答
832 浏览

delphi - 使用 Indy 的项目在升级到 10.2 Tokyo 后无法编译

卸载 Delphi 10 Seattle,删除所有包含“Embarcadero”的目录,然后安装 Delphi 10.2 Tokyo,我使用 Indy 的项目不再编译:

  • 项目的搜索路径没有任何变化(这些仅与项目相关)
  • Tools/Delphi Options/Library/Browsing path包含$(BDS)\source\Indy10\Protocol(以及CoreSystem),并且IdSSLOpenSSLHeaders.pasc:\Program Files (x86)\Embarcadero\Studio\19.0\source\Indy10\Protocols\
  • 添加IdSSLOpenSSLHeaders到 uses 子句没有帮助(因为我使用了设计时组件,所以自动添加了 12 个其他 Indy 文件名)
  • 表单上有一个 TIdSSLIOHandlerSocketOpenSSL 组件
  • 没有任何与 Indy 相关的内容Tools/Delphi Options/Library/Library Path
  • IdSSLOpenSSLHeaders.dcu等在c:\Program Files (x86)\Embarcadero\Studio\19.0\lib\win32\release\文件夹中
  • 编辑器在 Uses 子句下方显示红色摆动IdSSLOpenSSL,并提示“无法解析单元名称”
  • 磁盘上的意外位置没有旧的 id*.dcu 文件

我发现了两种我都不太满意的解决方法:

  1. Indy 文件不是项目的一部分;将 IdSSLOpenSSLHeaders.pas 显式添加到项目中使其再次编译,但我对此并不满意:IdSSLOpenSSLHeaders.pas现在在该源目录中编译,在那里留下一个 .dcu 文件。
    此外,所有其他 Indy 文件都不是项目的一部分。

  2. 复制IdSSLOpenSSLHeaders.pasIdCompilerDefines.inc我的项目目录

有没有我忽略的更好的解决方案?

我正在尝试创建一个小项目来重现该问题,但到目前为止,它可以编译???

0 投票
1 回答
456 浏览

screenshot - 从 Delphi 10 中的视图创建屏幕截图?

我想从 Delphi 10 中的 View 函数创建屏幕截图,而不必将应用程序编译到目标设备,然后在那里对应用程序进行屏幕截图。这将让我创建模型以供批准,而无需为每个示例屏幕编译到每个设备。所有帮助表示赞赏。