問題所在:因為我的水晶報表控件是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,就是它啦。