问题标签 [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.
c - 在 Delphi 2007 中链接多个 C 对象文件时出错
我是德尔福的新手。我试图在我的 Delphi 项目中添加 C 对象文件并直接链接它们,因为 Delphi 支持 C 对象链接。当我链接一个对象文件时,我得到了它的工作。但是当我尝试链接多个目标文件时,我收到错误“不满意的转发或外部声明”。我在 Delphi 2007 和 XE 中都试过这个。那么我在这里做错了什么?
工作代码:
错误代码:
delphi - Delphi XE中的'VarToStr'?
我试图将旧项目从 Delphi 5 迁移到 Delphi XE。当我现在尝试编译项目时,出现此错误:
关于这一行:
它在 Delphi 5 中运行良好,据我所知,XE 也支持 VarToStr?
delphi - Delphi XE 32 位有符号表示
有谁知道 Delphi XE 中的 32 位签名表示是否已更改?
我有以下代码,在 Delphi 5 中运行良好:
但是,当我尝试使用 Delphi XE 编译它时,我收到以下错误消息:
在某些元素中,例如:
$EE0E612C
$990951BA
$E963A535
(和其他,但不是全部)。
有谁知道为什么会这样?
提前致谢!
delphi - 在其他哪些 Delphi 版本中,带有 Cardinals 的 for 循环会失败?
请帮助我进行回归测试,并确定以下代码在哪些 Delphi 版本中失败。
编辑: 我知道它有一个编译器提示;事实上,在我继承的一个项目中发现,不知何故关闭了编译器提示(我看到很多人这样做,因为他们认为编译器提示总是无害的,这个案例表明它不是)。
我仍然想知道这个编译器异常出现在哪些 Delphi 版本中,以用于文档目的。
在 Delphi XE、2009、2007 和 5 中,它失败并显示以下输出。
我还没有时间研究其他 Delphi 版本。
请帮助我,并回答其他哪些 Delphi 版本也失败了。
这也是QC 90921的一部分的代码:
编辑: 答案摘要;它在这些 Delphi 版本中失败:
- 5
- 6
- 7
- 2006年
- 2007年
- 2009
- 2010
- XE
——杰伦
delphi - 如何使用 Delphi RTTI 获取和设置记录值
我正在尝试使用 Delphi XE 或更高版本中增强的 RTTI 功能来读取和写入 XML 对象。到目前为止,我在整数、浮点数、字符串、枚举类型、集合和类方面取得了成功,但无法正确输出或读取记录。问题似乎是获取一个指向记录属性的实例(指针)。
我怀疑如果我能弄清楚如何获取这些值,那么设置它们应该不是问题。然后进入数组,哦,天哪!
更新:请见下文。(迁移为单独的答案以提高可见性)。
delphi - Delphi XE 上的 ERangeError
我正在将软件从 Delphi 5 迁移到 Delphi XE。我已经纠正了很多差异,现在我可以编译我的代码了。
发生的问题是有时(在代码的某些地方),我收到错误“范围检查错误”。
例如,在此代码中:
通过 Des[Counter-1] := ' '; 行时,我在运行时收到错误消息 错误不是在第一次通过循环时发生,而是在很多次之后发生。
我试图禁用 Rance Checking ($R) 但它并没有解决我的问题。我还尝试将“计数器”的类型更改为 Cardinal 和 LongWord,但没有成功
我会很高兴有任何有用的想法!
谢谢。
delphi - 将对象暴露给 Fastreport
我使用 FastReport(评估版)主要是打印发票和报价单。我试图保持我的数据源和应用程序逻辑之间的分离,所以我想知道是否有一种简单的方法可以将 Delphi 对象直接公开给 FastReport。目前,我正在使用自定义数据源,但这需要大量手动操作。
基本上,我想使用我已经实例化的 TInvoice 对象并使用 FastReport 打印它。
有没有人实现了一个共同的祖先类或接口来将 Delphi 对象作为数据源公开给 FastReport(或其他报告工具)?
编辑:我正在使用 Delphi XE。
delphi - 我应该在 Delphi 中使用哪个版本的 IMalloc?
我正在尝试在 Delphi XE 中重构一个 Delphi 5 项目,为此我需要修复一个名为 BrowseDr 的单元中的一些错误。我得到的错误是
“MyShlObj”:
现在 FShellMalloc 声明中使用的 IMalloc 派生自一段OLE2.IMalloc
时间,“MyShlObj”中使用的 IMalloc 来自ActiveX.IMalloc
.
有可能改变其中之一吗?如果是,是否推荐?
delphi - Sqlite WHERE 子句和 Delphi XE 长字值
在 Delphi XE 中,我将字符串的 crc32 哈希存储在 SQlite 数据库中,在声明为 INTEGER 的列中。我的理解是 SQlite 不区分整数类型:int、int64、有符号和无符号,就数据库而言,它们都是相同的。但是,当我在 Delphi 中存储声明为 longword 的值时,WHERE 子句稍后无法匹配该值。
我的插入语句(此处删减)是:
长字值绑定到第二个参数,一切顺利。但是当我这样做时
查询不返回任何结果。
在SQLiteSpy中查看数据库,长字值显示为负整数。如果我使用从该显示复制并粘贴的负值执行上述 SELECT,则查询将返回预期的记录。
似乎当我将长字值绑定到 INSERT 语句时,SQLIte 会在我将相同的长字值绑定到 SELECT 语句时执行其他操作。将值转换为整数(在 Delphi 代码中,而不是在 SQL 中)可以解决问题,但这不是必需的,而且很容易忘记在其他地方进行转换。有更好的解决方案吗?SQLite 的行为是否正确?
delphi - 创建 Tform2 时显示消息?
我想在创建 Tform2 时向用户显示一条消息。我使用此代码,但效果不佳。