40得票4回答
如何制作PNG资源?

我有一个表单,上面有一个大的TImage作为背景。问题在于,它直接以位图的形式存储在DFM中,占用约3 MB的空间。原始PNG文件大小约为250K。我想通过将PNG嵌入资源中来减少膨胀,并在OnCreate期间加载表单。现在,由于Delphi 2009包括PNG支持,我可以这样做,但我不知道如...

40得票2回答
能否编写 Delphi 调试器的扩展?

我知道有一个API可以用来创建Delphi扩展。我经常使用GExperts包和各种JVCL专家。但我从未见过任何调试器的扩展。例如,能够注册各种对象的查看器,而不必在检查器中检查它们是非常好的。(例如,显示TImage的图像控件的表单,或者显示数据集内容的网格。) 是否有任何API允许您以这...

40得票7回答
如何确定Delphi应用程序的版本

想要获取Delphi应用程序的构建编号并将其发布到标题栏中。

40得票4回答
Delphi:需要时提示用户账户控制(UAC)权限提升

我们需要在运行时更改HKEY_LOCAL_MACHINE的一些设置。 在运行时,是否可以提示需要uac提升权限,或者我必须启动第二个提升了权限的进程来完成“脏工作”?

40得票29回答
在Delphi应用程序中使用哪个嵌入式数据库?

我正在使用 Delphi 创建桌面应用程序,计划使用嵌入式数据库。我已经开始使用带有 DISQLite3 库的 SQlite3 项目。它工作正常,但文档似乎有点匮乏。最近我发现了 Firebird(是的,我已经离开 Windows 有一段时间了),它似乎具有一些引人注目的特性和支持。 每个嵌入...

39得票7回答
系统错误。代码:8。没有足够的存储空间来处理此命令。

我们有一些使用Delphi 2006编写的Win32应用程序,有时用户会收到错误消息,其中包含"系统错误。代码:8。没有足够的存储空间来处理此命令。"。 从堆栈跟踪信息来看,似乎总是在CreateWnd调用期间出现此错误。Main ($1edc): 004146cc +070 app.exe...

39得票6回答
在使用字符串的情况下使用Case语句

假设我有一个字符串'SomeName' 我想让值在case语句中返回。这可行吗?可以像这样在case语句中使用字符串吗?Case 'SomeName' of 'bobby' : 2; 'tommy' :19; 'somename' :4000; else showme...

39得票2回答
如何诊断COM可调用包装对象创建失败?

我正在使用CoCreateInstance创建一个COM对象(来自本地代码): const CLASS_GP2010: TGUID = "{DC55D96D-2D44-4697-9165-25D790DD8593}"; hr = CoCreateInstance(CLASS_GP2...

38得票1回答
Delphi XE8中TList<T>存在bug,需要解决方法

升级到XE8后,我们的一些项目开始破坏数据。看起来是TList实现中的一个错误。program XE8Bug1; {$APPTYPE CONSOLE} uses System.SysUtils, Generics.Collections; type TRecord = record...

38得票1回答
如何在使用新的ODBC dbExpress驱动程序的TSQLConnection中使用TSQLMonitor的技巧?

我一直在测试随 Delphi XE2 提供的新 ODBC dbExpress 驱动程序,并发现 TSQLMonitor 似乎无法正常工作。考虑到可能是组件配置不正确,我将 TSQLMonitor 连接到使用 MS SQL dbExpress 驱动程序的 TSQLConnection 上,那样就...