37得票1回答
如何在我的控制台应用程序中添加版本信息?

看起来,由 IDE 内置向导生成的控制台应用程序项目不能拥有由 IDE 管理的版本资源。<- 注意这里的强调。 是否有任何解决此问题的方法?(我甚至准备编写一个 OTA 向导)

37得票10回答
类助手的好用途是什么?

Delphi(以及可能许多其他语言)具有类助手。它们提供了一种向现有类添加额外方法的方法,而不必制作子类。 那么,类助手的好处是什么?

37得票6回答
从Delphi 7迁移到Delphi XE有多难?

我们公司有一款软件已经开发了10年以上,所以里面有一些非常陈旧的东西。它仍然相当实用,但是我看到Delphi XE上的新功能让我想要升级。问题在于源代码本身超过300mb的.pas文件(包括组件等总共1gb)。 我们正在使用自定义组件、旧版JVCL和最新的DevExpress。 如果我决定...

37得票6回答
为什么Delphi打开时间越长,编译速度就越慢?有什么解决办法吗?

我公司已经使用Delphi开发大型项目十多年了。这些年我们的代码库不断增长,现在已达到约400万行代码。编译速度成为一个问题。我们花费了很多时间清除单元循环引用(缓慢编译的已知原因),并检查了设置的每个方面。但是我们发现,我们无法通过我们能控制的任何方式在实质上进一步改善。 目前,在一个拥有...

36得票2回答
当我在运行时不知道数组长度时,如何声明一个数组?

我最开始定义了一个全局变量array[1..1000]。但现在我需要将其定义为n,而不是1000,但我直到后来才知道n的大小。 我知道填满数组之前n的大小,但我需要它是全局的,因此需要一种在运行时定义全局数组大小的方法。 背景是使用文件中字节的线性转换填充数组。在打开文件之前,我不知道文件有...

36得票11回答
重新介绍Delphi中的函数

在 Delphi 中引入 reintroduce 关键字的动机是什么? 如果您有一个子类包含一个与父类中虚函数同名的函数,且未使用 override 修饰符声明,则会导致编译错误。在这种情况下添加 reintroduce 修饰符可以解决错误,但我从未理解编译错误的原因。

36得票5回答
如何在Delphi应用程序中嵌入除IE<n>之外的浏览器对象

使用默认的 TWebBrowser 可以轻松地嵌入一个 Web 浏览器。不幸的是,这个默认的浏览器内核是 IE&lt;n&gt;。 我想知道怎样集成 Gecko 或 WebKit 内核的浏览器。 有没有 VCL 示例可以参考? 如果没有,应该如何实现? 哪里可以找到可嵌入的 Gecko ...

36得票3回答
Win64 Delphi RTL在线程关闭期间出现内存泄漏?

长期以来,我注意到我的服务器应用程序的Win64版本存在内存泄漏问题。尽管Win32版本的内存使用稳定,但64位版本的内存使用量会定期增加,可能是每天20MB左右,没有任何明显的原因(不用说,FastMM4对它们都没有报告任何内存泄漏)。32位和64位版本之间的源代码相同。该应用程序围绕Ind...

36得票5回答
wsMaximized窗体未最大化显示

将一个窗体的WindowState属性设置为wsMaximized有时会导致该窗体不能最大化,而出现下面的情况: 长期存在的问题:这是我在2003年首次在Borland新闻组中提出的问题: 解决WindowState = wsMaximized的方法? 然后在2006年再次提出:...

36得票8回答
计算例程的速度?

如何最准确地确定处理例程(如过程或函数)需要多长时间,这将是最佳的方法? 我之所以问这个问题,是因为我目前正在尝试优化我的应用程序中的一些函数。当我测试更改时,很难仅从外观上确定是否有任何改进。因此,如果我能返回一个精确或接近精确的处理例程所需的时间,那么我就可以更清楚地了解到代码的任何更改...