17得票1回答
我能否检查是否已调用CoInitialize函数?

在具有ADO数据库连接的多线程环境中,我想知道是否已经调用了CoInitialize。我该如何检查这一点?

17得票3回答
Delphi VCL样式教程 - 如何在运行时更改样式

有没有一份好的VCL样式教程,可以让我们看到如何在运行时动态加载/更改样式? 这应该适用于Delphi XE2及更高版本,因为XE2是具有VCL样式的第一个版本。

16得票4回答
有没有一种简单的方法将TDictionary的内容复制到另一个TDictionary中?

有没有一种单一的方法或简便的方式可以将一个TDictionary的内容复制到另一个?假设我有以下声明: type TItemKey = record ItemID: Integer; ItemType: Integer; end; TItemData = reco...

16得票2回答
如何定义一个断点,每当对象字段值发生更改时触发?

举个例子,给定以下代码片段,我想定义一个断点,当对象字段值发生更改并可选地在条件(在此情况下为 False 或 True)上中断时触发。type TForm1 = class(TForm) EnableButton: TButton; DisableButton: TBut...

16得票3回答
把TArray<X>转换成X类型的数组是安全的吗?

今天我发现了一个编译器的错误(QC#108577)。 以下程序无法编译:program Project1; {$APPTYPE CONSOLE} procedure P(M: TArray&lt;TArray&lt;Integer&gt;&gt;); begin SetLength(M...

16得票2回答
我该如何修补Delphi类的私有方法?

我已经阅读了下面这些问题和答案: 如何更改外部声明函数的实现(detour) 在Delphi中修补例程调用 但是我无法想出如何修补位于另一个单元中的类的私有方法。 请查看此示例,我想要修补Bar过程。Unit ThidParty; Interface Type TFo...

16得票4回答
应用程序在退出时在SysUtils->DoneMonitorSupport中挂起

我正在编写一个非常线程密集的应用程序,在退出时出现了挂起的情况。我已经追踪到系统单元,并找到了程序进入无限循环的位置。它在SysUtils行19868 -> DoneMonitorSupport -> CleanEventList中:repeat until InterlockedCompar...

16得票1回答
如何为简单的Delphi XE2 32位VCL组件添加Delphi XE2 64位支持?

我需要将一个VCL组件从32位转换为64位(Delphi XE2)。实际上,我只能选择“32位平台”才能安装它,如果我选择“64位平台”,我可以编译但不能安装(没有安装菜单)。 我该如何添加64位支持并将其安装到64位应用程序中?

16得票1回答
有没有 Delphi XE2 样式库?

在XE2中,有一个新函数:'styles',适用于VCL(.vsf)和Firemonkey(.styles),其中一些提供在C:\Program Files\Embarcadero\RAD Studio\9.0\Redist\styles目录中。 由于创建一个新样式似乎很容易,是否有任何“样...

16得票1回答
如何增加外部调试器可显示的字符串大小?

我再次编写一个外部调试器可视化工具,并遇到了一个问题。调试器可视化工具返回的字符串似乎有大小限制。 Delphi 2010附带的TStrings调试器可视化工具有4K的限制。在Embarcadero新闻组发布的一个问题的回复中,Ewe Schuster 回答说:“你可以稍微增加缓冲区的大小,...