问题所在:因为我的水晶报表控件是for Delphi5的,所以在Delphi6下安装时碰到了很多问题。现在详细描述。
先找到控件安装包,双击Crystal.dpk。系统提示安装成新格式,选择“是”。
点击package的install进行安装,报告错误:未找到DsgnIntf.dcu,这是Delphi5和Delphi6的一个区别,将uses中的DsgnIntf改为{$IFDEF VER140} DesignIntf, DesignEditors {$ELSE} DsgnIntf {$ENDIF}。
继续编译。报告未找到DsgnIntf.dcu,倒,搜一搜,在Delphi安装目录的Source/ToolAPI里有一个,拷到lib下。
继续编译。报告未找到DesignMenus.dcu,再倒一次,再搜一次,还是在Source/ToolAPI里,再拷到lib下。
再编译,还说缺东西,缺什么拷什么吧,谁让我笨呢。这次缺DesignEditors,当然还是在Source/ToolAPI里。还缺一个DesignConst,一样拷贝。
后来找了一个简单办法,既然这三个都在同一个目录里,就把路径包进去。点菜单Tools->Environment Option,选到Library页,在Library Path里添加Source/ToolAPI。
最后缺Proxies.duc。这次可是找不到啦。怎么办呢,自己写一个。不是开玩笑,这个文件在Delphi6里已经没用了,写一个骗骗它:),程序如下:
unit Proxies;
interface
Function IsProxyClass(ComponentClass: TClass): Boolean;
implementation
Function IsProxyClass(ComponentClass: TClass): Boolean;
begin
Result := True;
end;
end.
存盘到lib下。
继续编译,又有错啦,未定义Form,这可是源码啦,怎么回事呢?打开源码看看,原来是叫Root,把所有报错的Form改为Root。改完之后再安装,OK。
在Data Access里的最后一个控件Crpe,就是它啦。