delphi - TShellChangeThread 中的内存泄漏

标签 delphi memory-leaks delphi-2010 delphi-xe

我遇到了一个问题,在 TShellListView 中将 AutoRefresh 设置为 True 会导致内存泄漏。这是一个已知问题,我在这里找到了解决方案:http://www.delphigroups.info/2/bf/292629.html .

我的问题是,我的应用程序当前是使用 Delphi 2010 (Rad Studio 7) 编译的,该版本不包含 ShellCtrls.pas 的源代码,必须对其进行修改才能实现上述修复.

我的开发机器上还有一份 Rad Studio 9 (Delphi XE)。此版本确实包含ShellCtrls.pas的副本。抱着希望,是否可以使用2010年XE的源代码?如果没有,有什么方法可以获取 Delphi 2010 的 ShellCtrls 源代码吗?

最佳答案

所有专业版和更高版本的 SKU 均包含源代码(尽管包含的 VCL 源代码因 SKU 而异,但演示通常不会,因为它们希望您需要该功能并因此升级您的 SKU)。如果您没有 D2010 中的源代码,则您要么找错了位置(位于 SamplesDemo 文件夹中,而不是 VCL 源文件夹中),要么您尚未安装演示。

演示默认安装在 Users\Public\Documents\ 中树;您可以使用您正在使用的 Delphi/RAD Studio 版本的“开始”菜单找到它们。

例如,对于 Delphi 2007,它们位于 C:\Users\Public\Documents\RAD Studio\5.0\Demos在 Win7 上,以及 ShellControls文件夹具体位于 C:\Users\Public\Documents\RAD Studio\5.0\Demos\DelphiWin32\VCLWin32\ShellControls

XE2 ,变化很小;他们在C:\Users\Public\Documents\RAD Studio\9.0\Samples\Delphi\VCL\ShellControls .

(仅供引用:在 WinXP 下的 Delphi 7 上,它们位于 C:\Program Files\Borland\Delphi7\Demos\ShellControls 中,因此 ShellControls 的东西至少已经存在了那么久的源代码。)

关于delphi - TShellChangeThread 中的内存泄漏,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15077702/

相关文章:

c - 在 C 中释放内存时应考虑哪些主要事项?

macos - 只有一个带有 FireMonkey 的应用程序实例

Delphi - 泛型类型约束序数类型

Java多线程控制

ios - 呈现 SpriteKit 场景时出现内存泄漏

delphi - 如何在 Delphi 2010 DataSnap Server 中访问/修改请求/响应的 header

delphi - TDateTimePicker 中的另一个错误?

oracle - 如何将 Oracle 绑定(bind)变量与 Delphi 的 SimpleDataSet 一起使用?

c# - delphi vs c# post 返回不同的字符串-utf 问题?

delphi - 在 Delphi 中使用 DWM 非客户端绘制后,标题按钮不响应鼠标单击