13得票14回答
为什么我的单元“使用不同版本”的文件进行编译?

我正在构建一个使用插件的程序,但是插件框架的动态链接将RTL和VCL从我的项目EXE中强制分离,并且它们没有启用调试信息。 因此,我建立了一个测试框架,静态链接到我的插件,以便我在跟踪代码时可以实际看到我在做什么。但现在,每次尝试重新编译时,都会出现错误:"unit turbu_skills...

13得票8回答
如何使可执行文件更小?

最近我重新开始使用Delphi,写了一个相当简单的实用程序应对客户要求支持旧版... 我知道现在大小并不是很重要,但让我感到奇怪的是,这个单元应用程序在编译后达到了1'084'416 b的可执行文件大小。我写的唯一一个.pas单元大小约为20.8k,主要是因为GUI的丰富性。 uses子句...

13得票3回答
为什么TEnumerable<T>使用传递方法?

TEnumerable&lt;T&gt;是所有泛型集合类的基类,其声明非常奇怪,如下所示:type TEnumerable&lt;T&gt; = class abstract protected function DoGetEnumerator: TEnumerator&lt;...

13得票2回答
为什么ReadDirectoryChangesW会忽略事件?

我使用ReadDirectoryChangesW来监视指定的目录,并在检测到更改时更新索引结构。我使用以下代码(大致)var InfoPointer : PFileNotifyInformation; NextOffset : DWORD; ... while (not Termina...

13得票1回答
泛型接口 - 将其设置为NIL

我正在尝试在Delphi 2009中实现以下示例代码中的“clear”功能。 interface ... TFoo&lt;T : IInterface&gt; = class(TObject) FField : T; procedure Clear; end; ......

13得票5回答
如何使用最少的资源实现定期检查某些内容的线程?

我希望有一个后台线程,每隔一定时间(例如5秒)检查与某个服务器的连接状态。 我不知道是否有一个良好的“设计模式”来实现此功能?如果我没记错的话,我曾经在某个地方读到过在线程执行方法中休眠线程不是很好的做法。但是我可能错了。 此外,我可以使用普通的TThread类或OTL线程库。 有什么好...

13得票5回答
当显示对话框时,是否可以使应用程序的所有其他窗口变暗?

如何在Delphi 2009中使应用程序的所有其他窗口变暗/淡化。 Form具有AlphaBlend属性,但它仅控制透明度级别。但如果我们可以像这样(集中的窗口)就太好了。甚至stackoverflow.com也是这样做的,当我们尝试在帖子中插入链接/图像等时。 我们如何在Delphi应用...

12得票1回答
如何比较包含对象函数/过程的TFunc/TProc?

我们使用一个包含一些对象的函数列表 TList&lt;TFunc&lt;Boolean&gt;&gt;,现在想要再次删除其中的一些条目。但是它不起作用,因为很明显您无法可靠地比较这些引用对象 reference to ...。 以下是测试代码:program Project1; {$APPT...

12得票3回答
如何在Delphi语言中从XML文件中读取数据并在文本框中显示

我是Delphi语言的新手,我有一个疑问,我有一个名为vehicle.xml的xml文件。 它看起来像这样&lt;data&gt; &lt;vehicle&gt; &lt;type&gt;Car&lt;/type&gt; &lt;model&gt;2005&lt;/model...

12得票2回答
Turbo Delphi 2009 发布的任何信息?

单独来看,Turbo Delphi版本和Delphi 2009中新增的改进是Delphi软件发展中最好的两个方面之一。但目前只能获取其中一个。有没有人知道Embarcadero是否有计划发布Turbo Delphi 2009? 作为一名付费用户,我拥有自己的D2009副本,但我正在尝试建立一...