小编Bru*_*Gee的帖子

创建和解析XML文档的最佳实践

如果我应该使用TXMLTransformProvider或TXMLDocument,我有疑问.

TXMLTransformProvider看起来更易于维护,在我看来,使用它将需要比TXMLDocument更少的编码.

另一方面TXMLDocument看起来更灵活.

我需要的是生成和解析具有嵌套属性的XML文档,将其映射到master-detail clientDataSets并写回一个XML文档.

你有这方面的提示吗?

谢谢.

xml delphi delphi-7

2
推荐指数
1
解决办法
1807
查看次数

getwindowtext没有检索文本

我尝试了以下代码,但它不从前台窗口检索文本!

procedure TForm1.Button1Click(Sender: TObject);
 var
  title : pansichar;
  s : string;
begin
    GetWindowText(GetForegroundWindow(), title,GetWindowTextLength(GetForegroundWindow()) + 1);
    s := title;
    showmessage(s);
end;
Run Code Online (Sandbox Code Playgroud)

delphi api delphi-7

2
推荐指数
1
解决办法
6606
查看次数

切换调试器

我正在使用Delphi创建一个程序,需要帮助转换Delphi调试器.我创建了一些代码如下:

尝试

...... ......

除了

...

不幸的是,在转移到except代码之前,调试器使用非用户友好消息启动.如何关闭它并直接移动到除代码?

delphi debugging

2
推荐指数
1
解决办法
185
查看次数

在运行时绘制和操纵形状

使用Delphi在运行时以交互方式绘制形状的最佳方法是什么?我需要能够选择,拖动和调整形状大小.这将用于标记现有图像和文档.

这看起来是一个很好的起点,但我想知道是否有更完整的库(最好是免费的)可以节省一些时间.

更新:

如果您从头开始使用自定义解决方案,我在Delphi Central上看到了另一个可能是更好的起点的示例.

delphi graphics

2
推荐指数
1
解决办法
5287
查看次数

德尔福:排序列表

我需要在Delphi中排序接近1,00,000个浮点项.我是Delphi的新手,想知道是否有现成的解决方案.我尝试了一些语言提供的构造,并且他们花费了大量的时间来完成运行.(应用程序的执行时间为5-10秒)

delphi sorting scalability

2
推荐指数
1
解决办法
5049
查看次数

Pascal对象:如何进行类型化的前向声明?

我正在将伟大的fmod C标题翻译成Pascal,而且因为前向声明而被卡住了.如果我在类型之前声明了该函数,则错误为"FMOD_CODEC_STATE:unknown",如果我在函数之前声明FMOD_CODEC_STATE ,则错误为"FMOD_CODEC_METADATACALLBACK:unknown"我是否知道如何解决此问题?非常感谢你 !

type
  FMOD_CODEC_STATE = Record
    numsubsounds: Integer;
    waveformat: array[0..0] of FMOD_CODEC_WAVEFORMAT;
    plugindata: Pointer;

    filehandle: Pointer;
    filesize: Cardinal;
    fileread: FMOD_FILE_READCALLBACK;
    fileseek: FMOD_FILE_SEEKCALLBACK;
    metadata: FMOD_CODEC_METADATACALLBACK;
  end;
  FMOD_CODEC_METADATACALLBACK    = function (codec_state: FMOD_CODEC_STATE; tagtype: FMOD_TAGTYPE; name: PChar; data: Pointer; datalen: Cardinal; datatype: FMOD_TAGDATATYPE; unique: Integer):FMOD_RESULT;
Run Code Online (Sandbox Code Playgroud)

delphi pascal object

2
推荐指数
1
解决办法
2504
查看次数

快速访问(已排序)TList

我的项目(在Delphi 6上运行!)需要一个内存分配列表(TMemoryAllocation),它存储在一个对象中,该对象还包含有关分配大小(FSize)的信息,以及分配是否正在使用或是免费的(FUsed) .我基本上将它用作GarbageCollector,以及一种让我的应用程序始终分配/释放内存的方法(并且需要大量的分配/解除分配).

每当我的项目需要分配时,它会查找列表以找到符合所需大小的免费分配.为此,我使用一个简单的for循环:

for I := 0 to FAllocationList.Count - 1 do
begin
  if MemoryAllocation.FUsed and (MemoryAllocation.FSize = Size) then
...
Run Code Online (Sandbox Code Playgroud)

我的应用程序运行的时间越长,这个列表会增加到几千个项目,并且当我非常频繁地运行它(每秒几次)时它会大大减慢.

我正试图找到一种方法来加速这个解决方案.我想过按分配大小排序TList.如果我这样做,我应该使用一些智能的方式来访问列表,以获得每次通话时所需的特定大小.有一些简单的方法来做到这一点?

我想到的另一种方式是拥有两个TList.一个用于未使用和一个已用分配.这意味着我必须从一个列表中提取TList.Items并一直添加到另一个列表中.我仍然需要使用for循环来浏览(现在)较小的列表.这是正确的方法吗?

其他建议也非常受欢迎!

delphi delphi-6

2
推荐指数
1
解决办法
341
查看次数

如何在Vista 64位上设置Delphi书签

在Delphi(2007)中,我习惯用CTRL-SHIFT-0,1,2等设置书签.

自从我升级到Vista x64后,上述功能不再适用.我仍然可以用CTRL-K-0,1,2等设置书签,但我习惯于传统的方式(加上它更快).

有谁知道为什么它不适合我?

ide delphi bookmarks delphi-2007

1
推荐指数
1
解决办法
688
查看次数

德尔福4中的下划线是什么意思

我在代码中遇到了以下内容.

_name1
_name2
smeEGiGross:  
Run Code Online (Sandbox Code Playgroud)

一般来说,_name1Delphi 4 中的下划线意味着什么?

delphi delphi-4

1
推荐指数
2
解决办法
969
查看次数

如何在Windows XP/Windows 2003上部署Delphi Soap Client(.EXE)?

我构建了一个使用一些Web服务的Delphi-7 Windows应用程序.应用程序的构建方式不需要运行时DLL.当我在Windows 2003服务器上部署它时,它在调用Web服务时失败.它会导致错误"地址00c05269处的访问冲突.写入地址00c05269".我相信原因是需要安装一些软件包.任何人都可以帮我解决这个问题吗?

TIA

delphi deployment soap-client

1
推荐指数
1
解决办法
3199
查看次数