DELPHI组件安装全攻略

来源:互联网 发布:java安装失败 编辑:程序博客网 时间:2024/05/16 15:12
一、前言

    由于系统不稳定,经常要重装DELPHI。而每次安装DELPHI的时候,原来注册的组件都被刷新,只能重新安装组件。众所周知,DELPHI的第三方组件N多,这个安装着实令人头疼。更有甚者,因为某些莫名其妙的原因, DELPHI的组件面板上有时居然只剩下一个标准组件。碰到这种情况,我不知道各位如何处理,我每次都是重新安装。为了解决这个难题,我决定深入了解 DELPHI组件是如何被注册。以下是我的一点发现,发表出来供大家参考,以便抛砖引玉。

二、DELPHI组件安装的构成

      安装一个组件到DELPHI上,实际上DELPHI只做几个有限的动作。

      1、添加文件路径到搜索路径上;

      2、记录包所在的路径以及包的名字;

      3、将帮助文件登记在系统中。

      而这些内容都可以在注册表中找到,这意味着,我们可以只要注册表中内容导出,就可以不用重新安装组件,而只要简单将注册表内容导入到注册表中就可以啦。

三、DELPHI的Library搜索路径

      Library的搜索路径被记录在注册表中,每次DELPHI启动时,都是直接从这个项读入数据。以下是他的注册项,大家可以根据自己的需要,自由的编辑。


[HKEY_CURRENT_USER/Software/Borland/Delphi/5.0/Library]
"Search Path" = "$(DELPHI)//Bin;$(DELPHI)//Lib"

     这里修改的内容可以从DELPHI的菜单项Tools/Environment Options../Library/LibraryPath中找到,他的作用在于单元和库的查找。当你进行编辑时,DELPHI会按照这里的路径顺序进行搜索,直到找到第一个文件为止。曾经发现一个问题,即一个文件同时存在两个路径中,其中有版本兼容问题,如果将版本问题的文件放在前一个路径中,编译就会发生错误。

     有时候,我们在DELPHI的IDE环境中,想跟踪进源码时,却无法找到源码,就是因为没有将源码的路径添加到搜索路径中。

四、DELPHI包的安装

      每次在DELPHI中安装组件,都要考虑是否冲突,还要在N多的组件中找到那个组件。很多情况下,在组件面板中显示的不是包文件的名字,那更头疼。这事实上只是DELPHI的障眼法,真正的内情事实上十分简单。每次DELPHI启动时,都要在读取注册表的记录的文件名和路径,然后从包文件中解出所包含的组件,再写入面板。以下是注册表的内容。


[HKEY_CURRENT_USER/Software/Borland/Delphi/5.0/Known Packages]
"$(DELPHI)//Bin/dclstd50.bpl" = "Borland Standard Components"

      前一部分是DesignTime包的文件名,后一部分是该包的名称。向DELPHI注册的包,可以不需要在IDE中安装,只需要往这里添加个项就可以了。主要把这个注册表的项目保存下来,不管安装多少次DELPHI都没有关系,还可以自由编辑安装,改变后重新导入即可。

      这个注册表的内容都可以在DELPHI的IDE的菜单项 Component/Install Packages/Packages中找到。

      需要注意的是,注册表中有个项记录被禁止使用的包,如果某个包被记录在这里,那么即使在Known Packages被登记也不会被使用,直到被从这里删除为止。这个项是下面这个。


[HKEY_CURRENT_USER/Software/Borland/Delphi/5.0/Disable Packages]

五、ActiveX控件的安装

      安装ActiveX组件,可以直接使用RegSvr32.exe,但是这个文件不是每个Windows版本都有,但应该可以找到类似的可执行程序。


RegSvr32 /u/s DLLlName

      /u 表示卸载该控件;/s 表示安装后,不显示信息(silent)

      这个步骤仅仅是向操作系统注册,在DELPHI还不能用。但在IDE的菜单项Component/Import ActiveXControl/ImportActiveX的列表中,可以看到刚才注册的控件,选定该控件,再点击Install...,系统就自动为这个控件生成一个文件,然后注册,于是乎就可以在DELPHI中象普通组件那样被使用。

六、Run Time包的搜索

      在DELPHI启动时,会搜索Run Time包,这些包一般会放在System32、${DELPHI}/bin、${DELPHI}/lib等目录下,这些包含在windows的环境变量 Path 中,但是为了方便安装,事实上可以把他们统一放在另外的目录下,然后再向windows登记这个路径。Run Time的搜索和Design Time的不同,他使用的是操作系统的路径,因此要特别小心重复放置。

七、帮助的链接

      1、在  delphi5.cnt  文件中添加 :Include ×××.cnt ;这个项是在目录中内容

      2、在  delphi5.ohi  文件中添加


;×××
:Index ××× = ×××.hlp

      这个项是搜索索引用的。

      3、在  delphi5.ohl  文件中添加


;×××
:Link ×××.hlp

      这个项添加链接

      4、在  delphi5.ohc  文件中添加


;×××
:Include ×××.toc

      5、在注册表中添加各个文件的路径

           [HKEY_LOCAL_MACHINE/SOFTWART/Microsoft/Windows/Help]
           "teechart.hlp" = "D:/Borland/Delphi5/Help"      

      6、删除delphi5.hlp所在的目录下的*.GID文件,该文件是隐藏文件,将其删除后,重新打开delphi5.hlp,系统将重新生成一个GID文件,你在上面添加的内容就被编译到GID文件中,呵呵,一切就这么OK了。
原创粉丝点击
热门问题 老师的惩罚 人脸识别 我在镇武司摸鱼那些年 重生之率土为王 我在大康的咸鱼生活 盘龙之生命进化 天生仙种 凡人之先天五行 春回大明朝 姑娘不必设防,我是瞎子 无痕内裤开胶了怎么办 衬衫洗了会缩水怎么办 脾虚引起的眼袋怎么办 沙漠玫瑰根烂了怎么办 多肉种子不发芽怎么办 多肉植物掉叶子怎么办 白色衣服染了蓝色怎么办 白色的衣服染色了怎么办 白毛衣染上金纺怎么办 白色的衣服变黄怎么办 白衣服84漂黄了怎么办 真丝的衣服皱了怎么办 衣服领子洗大了怎么办 真丝围巾洗皱了怎么办 真丝裙子洗花了怎么办 衣服晒得掉色了怎么办 衣服上出现霉点怎么办 校服后面的霉点怎么办 被子潮了有味道怎么办 涨奶堵塞有硬块怎么办 军训裤子腰大了怎么办 猫总是在床上尿怎么办 被子盖厚了上火怎么办 猫在被子上撒尿怎么办 脸上被辣椒辣了怎么办 压缩袋衣服皱了怎么办 新买的枕头太高怎么办 刚买的枕头太高怎么办 喝了过期的中药怎么办 喝了坏了的中药怎么办 德运奶粉过期了怎么办 手机膜里的气泡怎么办 贴膜边缘有气泡怎么办 父母被传销洗脑怎么办 分手了还放不下怎么办 说了分手后悔了怎么办 被套放久了发黄怎么办 结婚红床单掉毛怎么办 额头两边长痘痘怎么办 厕所被纸巾堵了怎么办 卖衣服客人嫌贵怎么办