我在互联网上找到了一个旧的.dpr文件,该文件基本上是一个 Delphi 7项目,从2008年关于一个老游戏的服务器仿真。我尝试使用RAD Studio编译该文件,但似乎该文件使用的是Indy 9 units/libs,其中RAD Studio附带的可用Indy是Indy 10。我要转换的代码是有错误的代码。第一个我尝试了几个转换从互联网上,但其他错误不断出现。
.dpr
xlpyo6sf1#
在Indy 10中,大多数阅读/写方法都从TIdTCPConnection移到了TIdIOHandler,并且也进行了重新设计。例如,Indy 10支持.NET,所以不再接受指向内存缓冲区的原始指针(这在未来的版本中可能会改变),所以你必须使用TIdBytes(动态字节数组)类型,或者TId(ReadOnly)MemoryBufferStream。因此,在您显示的代码中,尝试以下更改...使用TIdBytes:第一个或者,使用TId(ReadOnly)MemoryBufferStream:第一次
TIdTCPConnection
TIdIOHandler
TIdBytes
TId(ReadOnly)MemoryBufferStream
1条答案
按热度按时间xlpyo6sf1#
在Indy 10中,大多数阅读/写方法都从
TIdTCPConnection
移到了TIdIOHandler
,并且也进行了重新设计。例如,Indy 10支持.NET,所以不再接受指向内存缓冲区的原始指针(这在未来的版本中可能会改变),所以你必须使用TIdBytes
(动态字节数组)类型,或者TId(ReadOnly)MemoryBufferStream
。因此,在您显示的代码中,尝试以下更改...
使用
TIdBytes
:第一个
或者,使用
TId(ReadOnly)MemoryBufferStream
:第一次