Install the latest build of Indy 10 on Delphi 2009 [duplicate]

杀马特。学长 韩版系。学妹 提交于 2019-12-10 14:46:21

问题


Is there a step-by-step guide for updating the Indy 10 components in Delphi 2009?

I've read the uninstalling thread and have the latest build (IndyTiburon.zip). However there appears to be no installation instructions.

If you have accomplished this, please share the details.

Edit: I have managed to get the packages installed by messing with the "requires" section in dclIndyProtocols120 and dclIndyCore120.

Essentially removed all Indy package dependencies from "requires" section and just used the Library path resolve things. Added ..\Lib\Core, ..\Lib\System and ..\Lib\Protocols to the Lib path. Had to leave dclIndyProtocols120 in requires for dclIndyCore120 as it wont install without this.

All 3 packages compiled (including IndySystem120) and seems to be working okay now.

This should be easier for D2009 users. I had to update to resolve an SMTP bug in Indy (see link).


回答1:


On this question there is a more satisfying answer.




回答2:


For all versions before D2009 you can use a Fulldx.bat script to recompile the packages and then just open the BPL files in (for example Indy-10.5.5\D6\dclIndyCore60.bpl and Indy-10.5.5\D6\dclIndyProtocols60.bpl) in the Delphi 2009 IDE packages dialog. Now with Delphi 2009, the FullD12.bat is there but it is not doing anything.

My simple solution is to create Indy components at run time only. I add the Indy Tiburon Core, System and Protocols to the projects search path, and also use Apache Ant with a build script to run the compiler for the final build.




回答3:


One IIRC needs to compile system core and protocols in that order.

Moreover a package is a .BPL and a .DCP. So you probably would have to copy the .bpl and the .dcp to that directory in a normal case. The .BPL is what programs need to run, but to compile something that uses the .BPL (statically) you also needs the .dcp.

But that doesn't work for the Indy caseafaik because it also needs includefiles, so you need to add all their paths to the library path.

IIRC is that Delphi (at least the versions that I know) don't add directories to paths when installed, and one must always add paths to directories with .dcp or .dcu's manually.

(contrary to Lazarus that builds a list of dirs from the installed packages. But partially that is maybe also a fix for not having something akin .dcp yet, and in generally be more source oriented)

Note that I don't have D2009, it is just experience from general manual Indy compilation.




回答4:


Maybe a simple method for anyone looking 10 years later... (tested under Delphi XE5):

  1. Download the latest Version from https://indy.fulgan.com/ZIP/.

  2. Extract the ZIP-archive into a folder of your choosing (I made a folder "Delphi Lib" under my Documents).

  3. Throw out all Indy .dcu Files (Indy[...].dcu and Id[...].dcu) from your Delphi installation (for Example: C:\Program Files (x86)\Embarcadero\RAD Studio\12.0 (The last folders name may vary on your installation))
  4. Open Delphi and go to Tools -> Options. Get to the "Library"-Listing and add the following folders of your newly downloaded Indy: /lib/Core/, /lib/System, /lib/Protocols.

As always: Help yourself and make backups before deleting anything. You do not want to reinstall your comlete Delphi because you threw away a file you should've kept...



来源:https://stackoverflow.com/questions/931371/install-the-latest-build-of-indy-10-on-delphi-2009

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!