现在的位置: 首页 > 综合 > 正文

Indy 10 安装问题你解决了吗? 关键字 *.bpi indy 安装出错【转载请附上我的原文地址,谢谢】——程序员木头

2013年09月05日 ⁄ 综合 ⁄ 共 2847字 ⁄ 字号 评论关闭

这是我在ccrun上下载的indy10版本
在C++Builder6中的安装方法和步骤(2006.12.17  ccrun纠正版): 
1.  解压ccrun的压缩文件。事先卸载Internet  Direct(indy)  for...
2.  将.../Lib/Protocols/ZLib目录下的*.obj文件拷贝到.../Lib/Protocols目录中。
3.  运行.../lib目录下的Fullc6.Indy10.bat
4.  将.../lib/修正的.h文件/BCB6目录下的IdWinsock2.hpp复制到新生成的.../C6目录中,覆盖同名文件。
5.  所有需要的.h/.obj/.lib/.bpl文件全部在.../C6目录下。
6.  建议将C6目录移至C++Builder的安装目录中,这样可以在工程选项的路径中使用较短的相对路径。比如
      移到D:/bcb/cb6/Borland/CBuilder6/Projects中。
7.  在C++Builder中设置一下路径:Project--> Options--> Directories/Conditionals--> Include  path和      Library  path中将C6的目录添加进来,这样就OK了。
8.  打开C++Builder,Component--> Install  Packages--> 找到  C6目录下的dclIndyCore60.bpl和      dclIndyProtocols60.bpl,添加到组件列表中。

首先声明老妖的这个安装方法是正确的,但是安装的人却会出现各种各样的问题,网上甚至到现在还没有全面的正解。本人经历了两天的刨根问底,总结了一系列的原因和对应的解决方案:

(我用的是C++builder6.0,不是的同志做下变迁就行)

 

原因一:

C++builder6.0自身曾经携带了indy8.0或者其他旧版本,必须要进行卸载才行,而且这个卸载必须是彻底的。

解决方案:

启动C++ Builder6。点File菜单,选“Close All”。然后点Component菜单,选“Install Packages...”。出现对话框后,在“Design Packages”内,找到原有Indy的设计包(带有indy字样),选中,然后点下面按钮“Remove”。移除原版本的Indy设计包。
关闭Borland C++ Builder6。如果有其它使用到Indy的应用程序在运行,也需退出。
进入Borland C++ Builder6 的安装目录下,搜索以下文件:
dclindy*.bpl; dclindy.*; dclindy*.bpl; indy*.lib; indy*.bpl; indy*.dll; id*.pas; id*.hpp;  id*.dcu;
将上一步搜索到的文件,全部删除(强烈建议仅删除到回收站!)。
同样在Borland C++ Builder6 的安装目录下,这次单独搜索 id*.obj 。
将上一步搜索到的结果,除“IDPAS32.obj ”以外,全部删除(强烈建议仅删除到回收站!)。
到Windows安装目录下的System32目录下,找到以下文件: indy*.bpl ;然后删除。
到Borland C++ Builder6安装目录下,找到Help目录,搜索以下文件:Indy.* ;然后删除。
将Borland C++ Builder6 安装目录下的 Source/Indy 内的所有文件删除。启动C++ Builder6。点File菜单,选“Close All”。然后点Component菜单,选“Install Packages...”。出现对话框后,在“Design Packages”内,找到原有Indy的设计包(带有indy字样),选中,然后点下面按钮“Remove”。移除原版本的Indy设计包。
关闭Borland C++ Builder6。如果有其它使用到Indy的应用程序在运行,也需退出。
进入Borland C++ Builder6 的安装目录下,搜索以下文件:
dclindy*.bpl; dclindy.*; dclindy*.bpl; indy*.lib; indy*.bpl; indy*.dll; id*.pas; id*.hpp;  id*.dcu;
将上一步搜索到的文件,全部删除(强烈建议仅删除到回收站!)。
同样在Borland C++ Builder6 的安装目录下,这次单独搜索 id*.obj 。
将上一步搜索到的结果,除“IDPAS32.obj ”以外,全部删除(强烈建议仅删除到回收站!)。
到Windows安装目录下的System32目录下,找到以下文件: indy*.bpl ;然后删除。
到Borland C++ Builder6安装目录下,找到Help目录,搜索以下文件:Indy.* ;然后删除。
将Borland C++ Builder6 安装目录下的 Source/Indy 内的所有文件删除。

然后在按照老妖的方法,看看是否成功,注意,每次按照老妖的方法做的时候,要事先把上一次安装为成功的控件删除

原因二:

按照老妖和上述第一种原因下安装后还是提示:不能import 到IndyCore60.bpi, IndySystem60.bpi, Indyprotocols60.bpi这三个文件。或者少了其他什么文件;

那么可能是你C++Builder的环境设置出了点问题:

在环境变量中仔细查看少了以下哪个环境变量:(在project->options->Directories/Conditionals)

include path:

$(BCB)/include;$(BCB)/include/vcl;G:/indy/C6;C:/windows/system32 //我的indy安装目录是在G盘

Library path:

$(BCB)/lib/obj;$(BCB)/lib;G:/indy/C6;C:/windows/system32

如果没有,请根据自己的安装目录和相应的文件目录进行添加;

【关键部分】请注意:bcb之所以不能inport到以上的那三个文件,是因为这三个文件是存在于windows目录下的system32下的。在include path 和library path中再添加一个环境变量:C:/windows/system32.然而在我们添加成功,安装成功,运行后又发现这两个环境变量又失去了刚刚添加的那两个变量,这可能是因为BCB编译的时候同样的会去访问系统环境变量的,在BCB中查看系统变量可以在Tools- >Environment variables里实现。这说明你系统变量中没有这个目录。

其他原因:

你可能下载的是已经解压的专门为D7或者其他单一版本设计的安装文件,可以到ccrun的第三方控件去下载,www.ccrun.com 本人安装成功

【TBWood木头为您奉献——转载请付源地址:】

http://blog.csdn.net/TBWood/archive/2009/07/14/4347656.aspx

抱歉!评论已关闭.