有dcu文件,编译提示找不到pas

zensing 2008-05-13 10:57:31
编译别人的程式提示找不到pas文件,有dcu文件
能正常编译吗?
...全文
63 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
shuihan20e 2008-05-13
  • 打赏
  • 举报
回复
是什么文件,如果是第三方控件的可以自己安装,如果是自己写的,可能编译不了

不过可以自己补齐的,找到引用的函数过程只声明,暂不实现
Harryfin 2008-05-13
  • 打赏
  • 举报
回复
保证程序能找到你的dcu文件
blazingfire 2008-05-13
  • 打赏
  • 举报
回复
可以的
喜欢PHP 2008-05-13
  • 打赏
  • 举报
回复
只要保证编译器能找到你的*.dcu文件,那么就不需要*.pas了.
不是由BORLAND提供的组件叫第三方组件安装方法:
1 只有一个DCU文件的组件。DCU文件编译好的单元文件,这样的组件是作者不想把源码公布。一般来说,作者必须说明此组件适合Delphi的

哪种版本,如果版本不对,在安装时就会出现错误。也正是因为没有源码,给使用者带来了不便,那就是一旦Delphi版本升级,此组件就不能

再使用了,当然有的作者给出了几种版本的DCU文件,用户根据需要选择使用。这样的组件的安装方法是:在Component菜单中,选择install

component,在对话框 "into existing package"页中,单击“Unit file name”后的“Browse”按扭,在打开的文件对话框中,将“文件类型

”设定为*.dcu到要安装的DCU文件,按OK按钮返回"into existing package"页后再按OK按钮就可以安装了。注意,此时Delphi会提示

dclusr40.dpk将被重建,是否继续,OK就可以了。这里是将组件安装到dclusr40.dpk包中,此包从文件名上可以看出是用户自定义组件包,先

安装到这个包中吧,下面再讲有关注意事项。安装完毕会有已经将组件注册完的提示信息以及安装到哪个组件页中的信息等,到组件面板上看

看,一般会出现一个新的组件页,其中有刚安装的组件。
2 只有PAS文件或既有PAS又有DCU文件的组件。这种组件因为有PAS文件,也就是说作者提供了源码,这就好办多了。安装的方法和上面是一样

的,在文件类型中可以设定为DCU也可以设定为PAS,建议设定为PAS,这样可用你的Delphi重新编译一下,看是否会出现问题。Delphi升级后只

能选择PAS文件安装,这样才能重新编译,使得组件能适应新Delphi版本。这样的组件是很值得使用的,根据心铃的经验,没有源码的组件最好

不要使用,一是存在Delphi版本升级后无法使用的问题,再者当程序出现问题后用户无法调试组件来判断是否是组件中存在BUG。
3 有dpk文件的组件包。带有dpk文件的组件包一般是有多个组件构成的,也就是说安装后会有多个组件供使用,如果只有一个组件作者一般

不会制成DPK文件,使用上面的方式发布就可以了。对于这样的组件包,一般来说会有详细的安装说明文件,如上面提到的RXLIB,由于组件复

杂且安装时有先后顺序,作者不提供安装说明用户根本无法正确安装。如果没有安装说明文件,那么用下面的方法安装:在File菜单下,选择

”OPEN…”打开dpk文件(文件类型列表框中选*.dpk),在出现的Package窗口中,工具栏上有Install按钮,按此按钮即可进行安装。如果

Install按钮处于无效状态,那么先按Compile按钮编译,一般来说编译之后Install按钮就会处于有效状态,此时再按Install按钮就可以了。
4 带有Bpl文件的组件包。一般来说这也是由多种组件构成的组件包,它其实是一个动态连接库文件(DLL)。对于这种组件包的安装方法是

:在component菜单下选择“install packages”,然后单击Add按钮,在打开的文件对话框中到相应的bpl文件打开返回后,再单击Ok按钮就

可以了。
5 ActiveX控件的安装。要安装这类控件,需要先用regsvr32.exe注册,然后选择Component菜单中Import ActiveX Control项。在Import

ActiveX Control打开的窗口中,只有已经注册的ActiveX控件才出现在列表中,选中一个然后按Install按钮就可以安装了。如果事先没有用

regsvr32.exe注册也可以按ADD按钮到OCX文件即时注册,注册后再进行安装。
几点说明:
1 在拿到组件后先看是否有说明文件,一般来说在说明文件中有如何安装的指导,有些还会有组件的属性、事件、方法的使用说明,这些在

使用时是非常重要的。
2 在上面的组件(包)安装操作之前,最好将 *.bpl拷贝到你的System目录中,将*.pas、*.dcu、*.dcr、*.dp?拷贝到Delphi的Lib目录中再

进行。
3 前面我们提到安装DCU组件时,选用的是已经存在的dclusr40.dpk,当然也可以选择安装到一个新的包中,如果选择新包,需要先取一个名

字比如DEMO,事实上安装完毕后用户可以到的是Demo.bpl,而不到DEMO.DPK。假如你已经将一个组件安装到dclusr40.dpk中了,还想再安

装一个组件,如果再安装到dclusr40.dpk中,安装后你得到提示,原来安装的那个组件已经被取消注册,你将无法使用了。这样不就成了只能

安装一个组件了吗?除非你再安装到一个新的包中才可以两个组件同时使用。当然每安装一个组件生成一个新的BPL文件也未偿不可,但BPL文

件就增加许多。能否在dclusr40.dpk中多安装几个组件呢?当然是可以的。方法如下:用File菜单下的OPEN打开dclusr40.dpk文件,单击ADD按

钮,在打开的对话框中选择ADD UNIT页面,按Unit file name后的“Browse”按钮打开组件单元文件,OK即可,用此种方法这样可添加多个组

件的单元文件,添加完毕,按一下编译按钮,然后再按Install按钮即可,如果单元文件编译好的(DCU)可以直接按安装按钮。
4 组件的删除。光会安装可不行,还要会删除呀。很简单,在component菜单下,选择install packages,在列表中到安装所在的Bpl,

按Remove按钮,ok!再把Bpl文件删掉就彻底了,如果不删除BPL文件,下次可以按安装BPL组件的方法再安装使用
基本安装 1、对于单个控件,Componet-->install component..-->PASDCU文件-->install; 2、对于带*.dpk文件的控件包,File-->Open(下拉列表框中选*.dpk)-->install即可; 3、对于带*.bpl文件的控件包,Install Packages-->Add-->bpl文件名即可; 4、如果以上Install按钮为失效的话,试试Compile按钮; 5、是run time lib则在option下的packages下的runtimepackes加之。 如果编译提示文件不到的话,一般是控件的安装目录不在Delphi的Lib目录中,有两种方法可以解决: 1、反安装的源文件拷入到Delphi的Lib目录下; 2、或者Tools-->Environment Options中把控件源代码路径加入到Delphi的Lib目录中即可。 注意:所安装的控件是否与你所用的Delphi版本相适应。 RxLib的安装   首先在Delphi 5 的 IDE 中将以前版本的 Rxlib 反安装掉,删除 RXCTL5.BPL、RXDB5.BPL、 RXBDE5.BPL、DCLRX5.BPL、 DCLRXDB5.BPL 和DCLRXBD5.BPL。   打开 Rx 的运行包 RXCTL5.DPK,在 Package 窗口中按 Compile 按钮编译 RXCTL5.DPK ,然后用同样方法编译另两个运行包RXDB5.DPK 和 RXBDE5.DPK ,将编译后的三个 BPL 文件放到搜索路径中,如 WINDOWS\SYSTEM等。   在编译完运行包后你必须将 RX 的设计期包安装到 IDE 环境中。   打开 Rx 的设计期包 DCLRX5.DPK,在 Package 窗口中按 Compile 按钮编译,然后按 Install按钮将设计期包注册到组件面板中。用同样的方法安装 DCLRXDB5.DPK 和 DCLRXBD5.DPK。   注意:不要在 Delphi IDE 中保存包资源(package sources)! 控件删除 在Component/Install Packages中删除。 选Component/configure Palette… 有pages和components两个区域 双击components区域,选中要删除得控件,下面有得Delete按钮 但系统提供的控件只能Hide,不能delete。 打开控件所在的包文件(*.dpk),从中删除控件那个文件,再重新编译该包即可 如果是整个控件包都要删除的话,project->Option->Packages,删掉那个packages,That would be ok~

5,379

社区成员

发帖
与我相关
我的任务
社区描述
Delphi 开发及应用
社区管理员
  • VCL组件开发及应用社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧