如何正确更新Delphi 2009默认安装的Indy 10?

6

自从Indy现在已经内置到Delphi 2009的安装过程中……是否有一种正确的方法来“移除”它,以便可以将其升级到最新的SVN存储库?据我所知,没有自动化选项可以删除它。


FYI,Indy 已经与 Delphi 捆绑在一起很长时间了,比 D2009 更早。回溯到 D6 或 D7,如果我没记错的话。 - Remy Lebeau
3个回答

6

Indy的dcu文件与其他Delphi单元分开存储。要停止使用它们,只需从搜索路径、库路径等中删除该目录,并从浏览路径中删除源文件。

您可以像删除任何其他设计时包一样删除设计时包。从IDE配置中删除它们,然后删除bpldcp文件。(如果只删除文件,则可能会在下次启动IDE时出现错误,因为IDE找不到预期的文件。)

一旦在工具面板上不再出现Indy组件,在包列表中不再出现这些包,并且编译引用Indy单元的项目失败并显示“找不到使用的单元”错误,您就可以开始安装最新版本了。


1
你知道现在Indy组件被包含在环境中后,是否存在任何内部依赖关系吗?(例如任何Websnap功能)? - Darian Miller
中间件 Midas 不是依赖于 Indy 的服务器吗?(我记得以前是这样的) - Darian Miller
哦,抱歉,我以为你问的是Indy是否依赖于Delphi的任何内容(我现在意识到这没有意义)。我不知道有什么使用Indy。无论如何,任何使用Indy的东西都不应该需要CodeGear提供的副本。预计您最终将使用更新的Indy版本。 - Rob Kennedy
Windows\System32也是Indy文件(Indy*120.bpl)的存放位置,应该被删除/更新。 - mjn
1
@DarianMiller,确实有一些Embarcadero技术依赖于Indy。如果删除捆绑的Indy版本并安装新版本会导致已知的故障,请参阅Indy的安装说明。然而,多年来,Embarcadero一直在使用自己内部副本的Indy来避免用户出现故障。 - Remy Lebeau
显示剩余2条评论

4

正如Rob所说的那样:只需从Delphi的配置中删除目录即可。但是还需要额外的步骤:在每次更新后,请确保它们没有再次添加!显然,一些Delphi 2007的更新已经这样做了,我错过了很长一段时间,直到我发现一个我以为已经修复的错误。


0

我没有使用Delphi 2009,但在旧版本的Delphi中,安装Indy组件是可选的。因此,您可以尝试启动Delphi 2009的安装程序,看看是否有“添加/删除功能”或类似选项,并使用它来删除Indy。

此外,您可以自定义项目中应加载哪些包,因此您可以仅在每个项目上取消选择Indy 10并添加来自SVN的包(您还可以配置项目的默认配置)。

附:Indy非常棒! :-)


我并不认为它很棒。它安装起来非常困难。 - Gabriel
@Sahara 是的,安装过程可能会有些棘手,这取决于IDE版本。我希望在Indy 11中能够更好地优化这个流程,并最终将Indy纳入Embarcadero的GetIt Pacakge Manager中(它已经在Lazarus的在线包管理器中了)。 - Remy Lebeau

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接