问题标签 [delphi-xe]

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 投票
2 回答
1623 浏览

delphi - 我怎样才能制定创建表格的程序?

我有这个程序:

我将上面的代码更改为此,但我收到一个错误,为什么?我必须将此代码更改为?

0 投票
1 回答
642 浏览

delphi - Delphi XE 中的结构视图是否“坚持”到 DFM?

有没有办法让 Delphi XE 中的“结构视图”“粘”到特定的 DFM 而不是遵循编辑器上下文?

在 Delphi 7 和更早版本中,这是它的行为,但在 XE 中,它遵循上下文,这意味着无论何时编辑代码,它都会显示该代码的结构。

我在 DFM 中有组件结构,用于对 UI 模型进行分层描述,为此,结构视图非常方便。但是,与该 DFM 关联的代码是(其他)普通单元(UI/逻辑分离)。因此,每当我从 DFM 单元切换到其他单元之一(即使只是为了快速查找),它都会失去对 DFM 结构的关注。
回到 DFM 单元时,它显示的是 DFM 单元代码的(无用*)结构,而不是 DFM 组件的代码结构,您必须重新进入可视化编辑器并在那里手动选择某些内容以获取结构背部...

如果解决方案涉及从不显示代码结构的结构视图,我会很高兴,因为我已经为此目的使用了另一个工具。

*PS:“无用”,因为 DFM 单元的内容是自动生成的。

0 投票
1 回答
3807 浏览

delphi - 将变体转换为双精度时出错 [ Delphi XE + IBObjects 4.9.12 ]

我的配置:

Delphi XE
Firebird 2.1
IBObjects 4.9.12
Windows 7 64 位

当我尝试将值设置为 IBOQuery 参数时出现异常(“无法将类型的变体 (UnicodeString) 转换为类型 (Double)”)。

异常是从 IB_Components.pas 中的 TIB_Column.SetAsVariant 过程引发的(第 42795 行)。要创建这种情况,只需尝试将字符串传递给日期参数:

myQuery.paramByName('mydate').AsString := DateToStr(IncDay(Now,5));

在过去的 25 天里,我试图解决这种情况,但在 IBO 支持列表中我没有得到任何答案。
有人有想法吗?

0 投票
2 回答
4727 浏览

delphi - 如何使用 Delphi XE 的 TEncoding 将 Cyrillic 或 ShiftJis 文本保存到文件中?

我正在尝试使用 Delphi XE 将与我的系统(例如 Cyrillic)不同的代码页中的一些文本行保存到 TFileStream 中。但是我找不到任何代码示例来生成那些编码文件?

我尝试使用与 TStrings.SaveToStream 相同的代码,但是我不确定我是否正确实现了它(例如 WriteBom 部分),并且想知道它在其他地方将如何完成。这是我的代码:

提前致谢。

0 投票
1 回答
5331 浏览

delphi - 使用 Delphi 将数据发送到 PDF

有没有办法可以手动或通过第三方组件将数据发送到我的 PDF 文件(填写字段/空白),PDF 文件有某些字段可以由用户修改,输入数字.. 复选框等ETC

我怎样才能实现这个目标,如果它需要一些第三方组件,这是最好的,价格是多少?

我们的开发IDE是delphi 2010 / Delphi 2011 XE

谢谢 :)

0 投票
5 回答
6882 浏览

delphi - TThreadedQueue 不能有多个消费者?

尝试在单个生产者多消费者方案中使用 TThreadedQueue (Generics.Collections)。(德尔福-XE)。这个想法是将对象推入队列并让多个工作线程排空队列。

但是,它没有按预期工作。当两个或更多工作线程正在调用 PopItem 时,会从 TThreadedQueue 引发访问冲突。

如果对 PopItem 的调用使用临界区进行序列化,则一切正常。

当然 TThreadedQueue 应该能够处理多个消费者,所以我是否遗漏了什么或者这是 TThreadedQueue 中的纯错误?

这是一个产生错误的简单示例。

更新:TMonitor 中导致 TThreadedQueue 崩溃的错误已在 Delphi XE2 中修复。

更新 2:上述测试强调队列处于空状态。Darian Miller 发现在满状态下强调队列,仍然可以重现 XE2 中的错误。错误再次出现在 TMonitor 中。有关更多信息,请参阅下面的答案。还有一个指向 QC101114 的链接。

更新 3:随着 Delphi-XE2 更新 4,有一个已宣布的修复程序TMonitor可以解决TThreadedQueue. 到目前为止,我的测试无法再重现任何错误TThreadedQueue。当队列为空且已满时测试单个生产者/多个消费者线程。还测试了多个生产者/多个消费者。我将读取线程和写入线程从 1 更改为 100,没有任何故障。但知道历史,我敢于别人打破TMonitor

0 投票
13 回答
3933 浏览

delphi - 我应该转移到新的 Delphi XE Starter 吗?

自 1987 年以来,我一直是 Turbo pascal/Borland pascal/Delphi 开发人员。我目前仅使用 Delphi 来维护我(和我的一些朋友)私下使用的旧工具。不幸的是,我所有的专业代码都已经被移植了,有些甚至我直接参与了 :) 到其他开发语言和环境,可悲。好的,抱歉这个离题的介绍。让我来回答我的问题。

我目前拥有 Delphi 7 专业版。这是一个昂贵的举动,不值得花多少钱,只是为了我的业余爱好者使用。

现在,这个 XE Starter 版本已经出现了。149 欧元,看起来很划算。似乎它几乎包含了我现在使用的所有东西,还有一些我想念的东西;unicode 和泛型,特别是。

你知道这个报价是否有任何隐藏的(坏的)惊喜吗?那么,我应该留下还是应该离开?

在您看来,这样的举措的利弊是什么?

谢谢。

0 投票
1 回答
274 浏览

delphi - 将智能鼠标支持添加到 TMemo 或 TRichEdit 组件

如何将 智能鼠标支持添加到 TMemo 或 TRichEdit组件

我正在使用德尔福 XE

在此处输入图像描述

0 投票
4 回答
15721 浏览

delphi - Delphi XE 中的 SHA1 哈希

我正在实施 XML 数字签名。我从小步骤开始,所以现在我想解决 SHA-1 散列的问题。

SO中有很多关于这个的问题:

  1. 带密码箱的数字签名钥匙
  2. Delphi 的加密库
  3. 将此 php 数字签名转换为 Delphi
  4. Delphi:是否有适用于 Delphi-XE 的 LockBox 版本
  5. Delphi 2010 密码库

......可能还有更多。但是,我使用的是 Delphi XE。到目前为止,我已经尝试过 LockBox 2(Songbeamer 和 Sourceforge 版本)、Lock Box 3、DCPCrypto2 和其他一些(Hashes一个使用 Windows 加密功能的易于使用的单元)

我准备了一个小型试验台,它给了我以下信息:

锁箱2

锁盒3

DCPCrypto2

哈希

您是否成功地在 Delphi XE 下编译了上述库并让它们给出了适当的值?我对DCPCrypt2 SelfTest程序特别感兴趣。

编辑:我已经用固定的源代码添加了这个答案。谢谢大家的帮助,非常感谢。

0 投票
1 回答
3209 浏览

delphi - 如何将 Delphi XE 包和设置转移给其他用户?

我们已经建立了一台新的(模板)开发机器,其中包括 Delphi XE 包括大量第三方和内部包,并打算为我们团队的开发人员制作这台计算机的许多克隆。请注意,我们并非试图绕过许可,而是在克隆后(重新)激活/注册 Windows、Office、Delphi XE 等。我的问题是,当我(以我自己的身份)登录到将是我自己的机器的克隆时,Delphi 没有显示我们安装的任何包(即在模板机器上,使用本地管理员帐户)。无论如何,我是否可以从本地管理员找到 Delphi 设置并将其复制/移动到我自己的用户帐户,以便包和其他设置与我们在克隆之前在模板机器上设置的设置相同?