2012-06-26 39 views
3

我們有一個惱人的問題,我們的delphi 2007 IDE,時不時沒有明顯的原因,delphi IDE將< DCC_DependencyCheckOutputName節點中的絕對路徑更改爲相對路徑。Delphi(2007)ide將dproj文件中的絕對路徑更改爲相對路徑...爲什麼以及何時?

例如我們之前保存這是寫在dproj文件的項目:

<DCC_DependencyCheckOutputName> d:\ DcProgs \ ProgUtils \ ConvertToSmw \ ConvertToSmw.exe </DCC_DependencyCheckOutputName >

並保存在德爾福2007年IDE後它改爲

<DCC_DependencyCheckOutputName> .. \ .. \ .. \ ProgUtils \ ConvertToSmw \ ConvertToSmw.exe </DCC_DependencyCheckOutputName >

我的問題是,爲什麼以及何時德爾福做到這一點,是有沒有辦法從做停止德爾福這個 ?

您看到我們已經制作了一個自定義構建腳本,它使我們的項目每晚構建並在成功構建之後使用upx打包可執行文件。要知道exe文件的位置,我們使用「DCC_DependencyCheckOutputName」節點,但是upx不喜歡相對路徑,所以我們需要絕對路徑。 delphi停止改變這個或者我們至少知道這個發生的時間或原因是很好的,所以我們知道在ide內部不應該做什麼來防止這種情況發生。

任何想法的?

+0

無論何時提交更改,請使用您的修訂控制系統恢復這些IDE更改。 –

+0

這就是我們目前所做的,但有時候我們會忘記檢查dproj,看看delphi是否改變了它,在我們提交之前。並且只有在每晚構建開始時纔會引起注意。知道何時以及爲什麼delphi將它們從絕對路徑改變爲相對路徑仍然很有趣。它似乎並不總是發生。它讓我想知道爲什麼delphi做了這個 –

+0

@WillemsDavy與Delphi RAD =='隨機應用程序開發'有時:) – mjn

回答

3

IDE在項目和引用文件位於同一驅動器上時執行此操作。

德爾福試圖幫助您使用相對路徑製作您的項目和引用,以便您可以更輕鬆地將目錄樹移動到其他位置或計算機。

有時候會觸發回來(例如,當您想要包含來自Delphi示例代碼的部分時)。

要做到這一點的唯一方法是確保您希望具有絕對路徑名的部分位於與主項目不同的驅動器號上。

它也可能是(我還沒有嘗試),你可以通過讓他們在不同的UNC路徑上來強制執行此操作。

相關問題