标签: delphi-7

使用Delphi和Indy通过Progress事件以编程方式从Internet下载文件

我需要一种通过HTTP使用Delphi从Internet下载文件的方法,其中包括Progress事件,我正在寻找一种使用Indy组件的方法.

我使用的是Delphi 7.

delphi indy download delphi-7

14
推荐指数
1
解决办法
3万
查看次数

定制德尔福颜色

如果我想将颜色属性设置为非标准的(即不是clBlack或clRed),我该怎么做?我可以设置像十六进制颜色的东西吗?

delphi colors delphi-7

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

Delphi,FileStream和MemoryStream

我想将FileStream的一部分复制到内存流.

FileStream.Write(Pointer(MemoryStream)^, MemoryStream.Size);
FileStream.Read(Pointer(MemoryStream)^, count);
Run Code Online (Sandbox Code Playgroud)

是对的吗?它不适合我.

delphi delphi-7

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

我应该转移到新的Delphi XE Starter吗?

自1987年以来,我是Turbo pascal/Borland pascal/Delphi开发人员.我目前只使用Delphi来维护我(以及我的一些朋友)私下使用的旧工具.不幸的是,我的所有专业代码已被移植,有些甚至是我直接参与其他开发语言和环境,很遗憾.好的,抱歉这个渐远的介绍.让我谈谈我的问题.

我目前拥有Delphi 7专业版.这是一个昂贵的举动,永远不值得它的成本,只是为了我的业余爱好者使用.

现在,这个XE Starter版本已经出现.149欧元,看起来很划算.它似乎与我现在使用的几乎所有东西一起出现,并且有一些我想念的东西; unicode和泛型,特别是.

你知道这个优惠中是否有任何隐藏(坏)惊喜吗?那么,我应该留下还是应该去?

您认为此举的利弊是什么?

谢谢.

delphi delphi-7 delphi-xe

14
推荐指数
5
解决办法
3891
查看次数

如果"Assigned()"无法做到,如何检测"悬空指针"?

在另一个问题中,我发现Assigned()函数是相同的Pointer <> nil.一直是我的理解Assigned()是检测到这些悬空指针,但现在我已经知道它没有.悬空指针可能是在某一点上创建的,但此后已被释放且尚未分配nil.

如果Assigned()无法检测到悬空指针,那又可以呢?在尝试使用它之前,我想检查我的对象以确保它确实是一个有效的创建对象.我没有使用FreeAndNil尽可能多的推荐,因为我喜欢直接.我只是用SomeObject.Free.

访问违规是我最大的敌人 - 我尽我所能阻止他们出现.

delphi validation pointers delphi-7

14
推荐指数
5
解决办法
3728
查看次数

适用于XP的Windows防火墙规则

如何以编程方式将应用程序或端口添加到Windows XP上的Windows防火墙?

windows delphi winapi windows-firewall delphi-7

13
推荐指数
2
解决办法
3759
查看次数

在同一台机器上有多个Delphi版本

我们想要做的是在同一台机器上安装多个Delphi版本,这些版本是D7,D2010和DXE.

我们以前有D7和D2010,一起工作正常(由于各种版本的特殊条件,不得不复制D7和D2010的组件),但是,我不确定XE,因此问题.

当然我们可以试验,但这意味着浪费了几个小时,所以如果有人已经做了类似的设置或积极拥有,你能分享一下你的经验吗?

编辑1:

D7-D2010安装按时间顺序排列:

  • D7 +更新
  • D2010 +更新

delphi delphi-7 delphi-2010 delphi-xe

13
推荐指数
3
解决办法
5844
查看次数

Delphi:如何将列表作为参数传递给SQL查询?

我有一个整数或字符串列表,需要将它作为Delphi DataSet的参数传递.怎么做?

这是一个例子.MyQuery是这样的:

select * from myTable where intKey in :listParam
Run Code Online (Sandbox Code Playgroud)

我将参数设置为列表或数组或其他:

MyQuery.ParamByName('listParam').AsSomething := [1,2,3];
Run Code Online (Sandbox Code Playgroud)

它会导致此查询发送到sql server:

select * from myTable where intKey in (1, 2, 3)
Run Code Online (Sandbox Code Playgroud)

如果解决方案也可以使用字符串,那么这个查询会更好:

select * from myTable where stringKey in :listParam
Run Code Online (Sandbox Code Playgroud)

成为:

select * from myTable where stringKey in ('a', 'b', 'c')
Run Code Online (Sandbox Code Playgroud)

我相信这是一个简单的问题,但"IN"不是搜索网络的好关键字.

请回答我应该如何配置IDE中的参数,查询以及如何传递参数.

我正在使用Delphi 7.

编辑:我正在考虑答案是" 不可能直接做 ".如果有人给我一个非hackish的答案,接受的答案将被更改.

sql sql-server delphi delphi-7

13
推荐指数
2
解决办法
2万
查看次数

带有自动显示/隐藏滚动条的TMemo

我需要简单的TMemo,它不会在不需要时显示滚动条(即文本不足),但是当它们存在时会显示.类似于ScrollBars = ssAuto或类似于TRichEdit HideScrollBars.

我试图将TMemo子类化并ES_DISABLENOSCROLL在CreateParams中使用,TRichEdit但它不起作用.

编辑:这应该在WordWrap启用或不启用的情况下工作.

delphi delphi-7

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

在Delphi中,Math.Round()与MidpointRounding.AwayFromZero等效吗?

如何使用C#类似Math.RoundMidpointRounding.AwayFromZero在Delphi?

相当于什么:

double d = 2.125;
Console.WriteLine(Math.Round(d, 2, MidpointRounding.AwayFromZero));
Run Code Online (Sandbox Code Playgroud)

输出: 2.13

在德尔福?

c# delphi delphi-7

13
推荐指数
2
解决办法
871
查看次数