如何設置項目選項中的「目錄/條件」和環境選項中的「庫」路徑? Delphi幫助對這些非常重要的設置沒有多說。由於我的VCL之間的依賴關係錯誤,我有各種奇怪的錯誤。如何正確設置「目錄/條件」和「庫」路徑
1.
我曾在一個名爲ThirdPartyPackages_D7.dpk包合併一大套的第三方控件。這在我重新安裝Delphi時很有用,因爲我不必每次都重新安裝所有這些第三方VCL。
然後,我在MyControls_D7.dpk中擁有自己的控件,這取決於ThirdPartyPackages VCL。我也有另一個包依賴於MyControls的包BlgPackage.dpk。
在鏈的末尾是我的應用程序(DPR項目),它使用BlgPackage中的控件。
ThirdPartyPackages.dpk -> MyControls.dpk -> BlgPackage.dpk -> MyApplication.dpr
當我改變/編輯東西,第二包(MyControls.dpk)和構建DPR應用程序,它的工作原理。編譯器會看到對該程序包所做的更改。 但是,如果關閉項目並加載並編譯BlgPackage,則會拋出一個令人討厭的消息,即在MyControls中找不到函數xyz,因爲我將其刪除(我已將MyControls的單元加載到IDE中,與應用程序單元並行)。似乎構建應用程序只刷新所有使用的軟件包的DCU文件,但不刷新DCP/BLP文件。
如何編寫和編譯軟件包中的代碼,而無需將軟件包顯式加載到IDE中並構建它們? (注:我有一個討厭的錯誤,不允許我在項目之間切換,而無需重啓IDE或在同一時間來加載一組項目/包(* .bpg)。)
2.
另一個問題是,我想將包的編譯文件(DCP/BPL/DCU)存儲在其文件夾中(例如c:\ MyProjects \ Blg)。
如果我將BlgPackage軟件包的「輸出目錄」,「單元輸出目錄」和「DCP輸出目錄」框設置到它的文件夾中,不僅其BPL/DCU/DCP文件將被存儲在那裏,而且BPL/DCP文件MyControls將存儲在那裏。 如何將每個軟件包的二進制文件放在單獨的文件夾中?
德爾福7,WIN XP,設置爲「重建需要」
@ Serg-我不認爲No2會起作用。Delphi 7的幫助如下所示:「如果您嘗試使用不在庫路徑上的文件構建包,則會收到編譯器錯誤。」所以,如果我從庫中刪除它的路徑,我將無法編譯我的軟件包。 – Ampere 2010-09-07 18:21:53
我做到了,現在我無法編譯該項目。我找不到一個DCU。該DCU屬於MyControls。它位於MyControls PAS文件所在的相同文件夾中。 – Ampere 2010-09-08 09:19:55
@Altar - 將.dcu存儲在與.pas相同的文件夾中是不好的做法,應該避免。 DCU應該通過「庫」路徑可用,而源(.pas)通常不是。 在任何情況下,如果出於某種原因,您不想在包選項中設置DCU路徑,則可以手動將導致問題的DCU複製到通過「庫」路徑可用的文件夾中。 – kludg 2010-09-08 14:11:01