2011-11-28 37 views
2

我想在Delphi 2010上編譯TBX_D2010。編譯失敗,E2003未聲明的標識符:TBX.pas中的'TTBPopupPositionRec'。編譯組件時Delphi組件被忽略

奇怪的是,在單元TB2Item中聲明瞭TTBPopupPositionRec。即使更奇怪的是,我可以編輯TB2Item.pas,甚至刪除整個內容,它仍然會失敗,同樣的錯誤,忽略TB2Item.pas中引入的錯誤,就好像它會使用其他不同的TB2Item副本。但是,從TBX.pas的使用中刪除TB2Item會失敗並顯示不同的錯誤。

我對TB2Item *有dir/s,沒有發現任何可疑的東西,並刪除了所有的TB2Item.dcu文件。

發生了什麼事,爲什麼Delphi忽略了我在TB2Item.pas中的更改?

+1

您是否安裝了包含此設備的軟件包? –

+0

謝謝,這會讓我走上正確的道路。我刪除了其他軟件包的所有.bpl和.dcp文件,重新編譯,重新安裝了另一個軟件包,新的軟件包以及其他所有軟件都能正常工作。 – Kaitnieks

回答

0

發佈的答案,所以我可以關閉此:

我刪除了所有.bpl和其他包裝.dcp文件,重新編譯,重新安裝其他程序包和新的,一切正常。

2

當您在包含無法定位的神祕單元的IDE中安裝軟件包時,通常會發生這種情況。

究竟是什麼解決方案取決於您的確切場景。

4

TBXToolbar 2000的附加組件。

默認情況下TB2Item.pas不包含TTBPopupPositionRec這是通過運行在TBX\Tools\TB2k Patch\目錄中找到的差異來添加的。

未找到此類型將表示補丁未正確應用。

另一個需要注意的是,我注意到Toolbar 2000最後支持的版本是Delphi 2009. 由於使用Delphi 2010進行編譯,可能有一個或多個需要更新的編譯器定義。

+0

問題是我安裝了未打補丁的TB2K,然後刪除它來修補它,但沒有刪除bpl和dcp文件,刪除未完成。 – Kaitnieks