问题标签 [delphi-xe8]

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 投票
3 回答
3117 浏览

delphi - How can I configure the new Delphi XE8 Editor begin-end visual cues?

The Delphi XE8 editor has visual cues so that you know which begin goes with which end. In our team, we have the convention of always put the begin on the same line as the owner clause.

Is there any way to have the visual cue aligned with the corresponding end instead of its begin?

Screenshot

UPDATE: This issue seems to be fixed in Delphi Seattle 10.

0 投票
0 回答
2897 浏览

delphi - Delphi XE8 中的“SSL 协商失败”

我在 Delphi XE8 中重新编译 Delphi XE3 应用程序。

该应用程序使用 TIdSMTP 对象将消息发送到 Amazon SES(尝试过爱尔兰和北弗吉尼亚)。

这些是 TIdSMTP 组件中设置的一些属性(更新:添加了更多字段):

  • IOHandler包含IdSSLIOHandlerSocketOpenSSL以下子字段: Destinationis email-smtp.eu-west-1.amazonaws.com:25, Hostis email-smtp.eu-west-1.amazonaws.com, IPVersionis Id_IPv4, MaxLineActionis maException, MaxLineLengthis 16384, Portis 25, ReadTimeOutis -1, RecvBufferSizeis 32768, ReuseSocketis rsOSDependent, SendBufferSizeis 32768, SSLOptions.Methodis sslvTLSv1, SSLOptions.Modeis sslmUnassigned, SSLOptions.SSLVersionsis [sslvTLSv1], TransparentProxyis IdSSLIOHandlerSocketOpenSSL., TransparentProxy.Autenticationis NoAuthentication,TransparentProxy.IPVersionId_IPv4,TransparentProxy.Port1080,TransparentProxy.VersionsvNoSocks,UseNagleTrue

  • Port25

  • UseTLSutUseExplicitTLS
  • “关于印地”是 10.6.2.5263

使用 XE8,我得到“SSL 协商失败”。handler.Send(msg);以下代码中的异常。完全相同的代码适用于 XE3,所以我猜它可能与 Indy 更新有关。

为什么我在 XE8 中得到这个异常?现在安装 XE8 的机器与安装 XE3 的机器相同,并且 SSL dll 仍然在各自的 Degug 和 Release 输出目录中。XE8 目前只使用 Debug 输出目录,旧的 XE3 可执行文件仍然可以在 Release 输出目录中正常工作。

更新:只需更新开发机器中的旧 SSL DLL,即可解决此问题。显然,最新的 Indy 默认禁用不安全的东西。

0 投票
1 回答
8944 浏览

delphi - 如何在 XE8 中禁用 Castalia?

假设我希望禁用 XE8 中引入的新集成的 Castalia。我该如何以干净的方式做到这一点?我在 Castalia 菜单上看不到任何允许我通过设置一个选项来禁用它的东西。

人们可能希望禁用 Castalia 的原因包括:

0 投票
3 回答
1076 浏览

delphi - 无法在 XE8 中部署 Ad Hoc Release

我现在似乎根本无法使用 XE8 部署 iOS Ad Hoc 版本。是不是我做错了什么?已经通过电子邮件发送了 Emba 支持,但在这里寻求更快的回复。

对于任何旧的或新的应用程序:

嗯,不像以前在 Xe7 中我可以手动输入来指定,我现在不再可以......我已经仔细检查过,证书和配置文件安装在 Xcode 和 KeyChain 中,因为它们应该在我的 mac 上。

同样关于“3)”,当从配置选择中选择“调试”而不是“Ad Hoc”时,一切都会按原样显示,我可以在我的 KeyChain 中看到所有已安装的配置文件及其相应的证书。

有人遇到这种情况或对如何部署 Ad Hoc Release 有任何建议吗?

0 投票
2 回答
1048 浏览

android - DELPHI XE8:在 OnCreate 事件期间,Android 上的 TRectangle 没有刷新

我在 DELPHI XE5 上创建了这个功能,效果很好。您使用所有图标创建一个图像,将此图像加载到 TBitmap(在我的示例中为 IDE)中,并在表单中创建许多小 TRECTANGLE。

在 onCreate 期间,我调用 Mapping 方法来设置每个 Trectangle 的背景。

但在 DELPHI XE8 中,它不适用于 ANDROID

这是映射功能。

图片 (delphiXE.png) 部署在“asset/internal”中,并在 oncreate 中打开。

在 Windows 中,一切正常,但在 Android 中没有,但如果我使用 Mapping(Logo,0,0) 添加一个简单的 onclick 事件;调用,映射工作,但我需要先点击灰色的 Trectangle 来设置它的背景

任何想法 ?

更新: 使用计时器,映射功能正在工作,trectangle 有很好的图片,但是如果我切换到另一个应用程序并返回我的应用程序,图片会消失,trectangle 会变回纯灰色。

这意味着 TRectangle 的内部绘制没有更新。为什么 ?

0 投票
1 回答
482 浏览

delphi - Castalia 内联变量声明如何在 Delphi XE8 中工作?

我正在尝试将内联变量声明与此处描述的 Castalia 一起使用。

这是上面链接中的问题摘录:

内联变量声明 Castalia 提供内联变量声明。在您的代码主体中,您可以声明变量,并且只要您按下空格键,Castalia 就会自动将其添加到您的函数或过程的变量声明部分,您在主体中键入的声明被替换为引用到变量。

但是,它似乎对我不起作用。例如,如果我myVar: integer在此代码之后按空格键:

我没有自动得到这个(实际上什么也没发生):

在Castalia -> Castalia Options for inline variables中似乎没有任何特定的 Castalia 设置可以启用/禁用,Embarcadero 文档也没有提及任何设置。

Castalia 内联变量声明是如何工作的?

0 投票
1 回答
1130 浏览

ios - Delphi XE8 Firemonkey iOS 应用程序仅使用 TEdit 就崩溃

我创建了一个新的 iOS 应用程序,在上面放了一个 TEdit,然后在模拟器中运行它,程序崩溃了。删除 TEdit,运行它,它就会崩溃。从 uses 子句中删除 FMX.Edit,运行它,它运行正常。

有没有人解决这个问题?

谢谢

0 投票
1 回答
694 浏览

delphi - 调用 GetProcessDPIAwareness 时出错

我正在尝试GetProcessDPIAwareness从 Windows 8.1 SDK 移植。但是,当我尝试启动此程序时,它会因错误而崩溃:

system exception (code 0xc0000409) at 0x77929990'

该功能存在于shcore.dll. 我正在跑步Windows 8.1,所以它应该可以工作,但它没有。

0 投票
1 回答
409 浏览

android - 在备忘录中列出原始传感器数据

我想在 Android 备忘录中列出所有可用的原始传感器数据。

以下代码在过去几年中有效,但不适用于 XE8。可能存在内部编译器错误。我能做些什么让它再次工作,还是有替代解决方案?


更新

一些实验:

(1) 当我注释掉第一个“for”时,它会编译:

(2) 当我注释掉“n”和“v”的赋值时,它也会编译:

由于“for”、“n”和“v”都不是坏区域,那么错误在哪里?

(3) 当我注释掉第二个for循环时,它会再次编译。如果我注释掉第一个 for 循环,它也会编译。每个 for 循环都有效,但结合起来它们将不起作用。

看起来只有当 5 个因素结合在一起时才会发生错误:

  • 类型信息
  • 访问器
  • for 循环
  • TypInfo (GetEnumName) 的使用
  • 使用了两个 for 循环。

更新 2

这是我能找到的最小的可重现代码。如果任何行被注释掉,它会编译:

0 投票
0 回答
1661 浏览

delphi - 在 TChromium(Chromium Embedded)中使用 Print TO PDF 文件?

在带有 TChromium (DCEF3) 的 Delphi XE7/XE8 中,我需要以编程方式将当前网页打印(即保存)到 PDF 文档文件(可选地无需用户交互)到预定义的本地路径。目前,我只能通过使用自定义 PDF 打印机驱动程序并以编程方式打开打印机对话框来间接执行此操作:

但是,这有两个缺点:

  1. 我不能假设最终用户安装了 PDF 打印机驱动程序
  2. 最终用户必须在文件对话框中选择文件路径,而文件路径应该是预定义的。

但是 Chrome 有一个内置的PDF 打印机驱动程序和打印预览,使用键盘快捷键 CTRL+P 显示。但是,当我在guiclient TChromium 演示应用程序中按 CTRL+P时,什么也没有发生,没有像 Chrome 中那样显示打印预览。

那么如何在 TChromium 中调用 PDF 打印预览,可能带有预设的输出路径(不显示文件对话框)?