问题标签 [delphi-3]

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 投票
5 回答
1904 浏览

sql-server - 德尔福 3 到 SQL 2008

我的一个客户有一个用 Delphi 3 编写的系统,数据库是 Paradox。我的工作是将其转换为使用 SQL Server 2008。如何使它连接到 SQL 2008?这是相当古老的东西,我知道。我很感激帮助。谢谢

0 投票
1 回答
229 浏览

delphi - Delphi 3 中的接口支持等价物是什么?

我支持用 Delphi 3 编写的应用程序,我希望在等待机会将其升级到较新版本的 Delphi 时对源代码进行一些改进。我想使用的一件事是接口。我知道 Delphi 3 已经有了接口的概念,但我很难找出如何做相当于

0 投票
1 回答
447 浏览

delphi - 为什么我的应用程序中的 Cardinal 类型发生了变化?

我在这里有一个程序,它在 Delphi 3 中运行良好,我在 Turbo Delphi 2006 上编译和测试,发现了一个问题。问题是这样的:我使用“基本”数据类型作为某些东西的索引。它在 Delphi 3 中工作,但我发现值比 Turbo Delphi 2006 编译版本中的值大约 128-256 左右,具体取决于具体数据。将这些数据类型更改为“longint”解决了问题,因此程序可以在两个编译器上正常工作。

问题:这是为什么?

我的理解是 Cardinal 数据类型只是典型的无符号整数数据。这与它们在本程序中的应用是一致的,特别是Delphi 3 编译正确的事实证明了这一点。那么为什么 Turbo Delphi 2006 编译不起作用呢?

0 投票
4 回答
1000 浏览

delphi - 适当的灾难性错误处理

我一直遇到一些我真的没有用 Delphi 程序解决的问题,想知道是否有人可以指导我。正如主题所说,您如何进行适当的灾难性错误处理?例如:

我也可以在那里使用异常单元并抛出异常,但程序会像以前一样继续。我过去曾使用过暂停调用,但它似乎没有进行任何清理或类似操作,所以我最终为我所做的一切进行了关闭和免费调用的大程序,以确保(即使那样我'不确定任何幕后的东西)。

那么处理此类事情的正确方法是什么?

编辑:澄清一下,我想知道如何让程序做它需要做的清理工作,然后立即退出而不做任何其他代码。

0 投票
2 回答
1862 浏览

delphi - Delphi TStringList 自由导致异常

考虑这个简短的 Delphi 过程:

当我在 Delphi 3 中使用 x = '' 运行它时,永远不会创建 field_list,

  1. 为什么field_list <> NIL
  2. 对象没有初始化为NIL?
  3. 如果不是NIL,那是什么?
  4. 如果它没有分配而不是NIL我怎么知道Free它是否分配?Assigned函数没有告诉我:if Assigned(an_object)相当于if an_object = NIL
0 投票
3 回答
192 浏览

delphi - 部署自定义单元和组件

在重做或重新安装 Delphi 时,我遇到了麻烦。当涉及到我生产的用于项目的组件和单元时,我不得不遍历我的项目的整个备份,以找到我在其他项目中使用过的所有东西,然后复制这些单元,安装组件通过 Delphi 界面,并确保一切都存在。然后,我通常会忘记一些事情,然后当我退出使用这些单元或组件之一的项目时,我必须停止我正在做的任何事情,找到备份磁盘,找到数据进行安装,然后再继续.. .

主要问题:有没有人想出任何办法通过自动化所有这些来解决这种情况?否则,这里大多数人在以这种方式管理Delphi时会做什么?

0 投票
2 回答
945 浏览

delphi - 在 Delphi 3 中重现 UInt64

我正在尝试“重新定义” UInt64Delphi 3 编译器的类型。原因是我不使用system.pasnor sysinit.pas。所以我只有原生 var 类型,比如IntegerCardinal。我怎么能重现UInt64