2010-12-03 81 views
0

我只是遇到了一個無處不在的問題...... DFM文件在項目編譯時從Delphi讀取得很好,但是當我從命令行編譯時(dcc32)我得到錯誤Error: RLINK32: Error reading file "update.dfm" Failed readDelphi 7 RLINK32讀取dfm文件時出錯 - 讀取失敗

什麼是更奇怪的另一個項目包含相同的文件構建沒有錯誤從Delphi和dcc。

有沒有人有線索可能會導致這樣的事情?

我試圖從另一個位置構建,仍然是一樣的。

操作系統是Windows Server 2008.權限似乎是正確的。

+0

它是包含在項目中還是通過搜索路徑找到的? – 2010-12-03 12:00:35

+0

我建議你檢查更深入的海拔 – ComputerSaysNo 2010-12-03 12:04:29

回答

1

使用SysInternals Process Monitor,並觀察它何時尋找update.dfm

您可能會看到DCC32瘋狂搜索到處尋找update.dfm(除了它所在的位置)。或者它可能會找到它,但OpenFile失敗並顯示錯誤。

無論哪種方式:你會發現究竟發生了什麼。

0

要嘗試縮小問題的原因,請使用文本編輯器打開dfm,然後逐漸刪除屬性並保存,直到構建工作。這至少會表明它是否是dfm中特定組件的問題。

0

與dcc32不同的主要原因是環境選項中的庫路徑。當您從IDE構建時,會使用它。當你運行dcc32時,你需要指定這個。

可以通過在dcc32上設置-I和-U選項的庫路徑來完成此操作,也可以使用dcc32.cfg文件來保存構建的所有配置。

RLINK32可以表示重複資源,因此可以考慮重命名其中一個表單以避免衝突。說到希望圖書館路徑能夠解決問題。

0

我發現這個問題似乎隨機隨機發生,如果我改變了一點點的代碼添加一個複製的組件,這次我唯一的區別是改變=<>但改變它回來工作正常,除了現在我已經改變了一些其他的事情再次發生 - 因此,我發現這一點的原因。作爲一個新手,我並沒有真正理解這裏提到的其他一些東西,但是我只是在按下之前先建立了這個項目才發現F9似乎能夠正常工作。至少現在是這樣。

希望這可以幫助別人! :)

0

我看到這種情況發生時,你從一個枚舉類型中刪除一個值,並在dfm中使用該值。下次打開dfm時,IDE會將垃圾文本放在值的位置。德爾福2010年,如果有幫助。

我只是在文本編輯器中打開dfm並刪除損壞的文本。