欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

完美解決Indy 編譯提示版本不一致的問(wèn)題

 更新時(shí)間:2020年02月15日 14:48:51   作者:jack0424  
今天小編就為大家分享一篇完美解決Indy 編譯提示版本不一致的問(wèn)題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧

1,起因

某delphi程序A使用了Indy9.0.18組件。機(jī)器中原本自帶老版本的Indy組件9.0.12,后升級(jí)到9.0.18,使用一直正常。

某次操作將程序A重新build all了一下,結(jié)果提示如下信息,此后即便是compile也會(huì)出錯(cuò)。

[Fatal Error] uMain.pas(11): Unit IdServerIOHandlerSocket was compiled with a different version of IdServerIOHandler.TIdServerIOHandler

2,解決

顯然錯(cuò)誤原因在于indy組件出現(xiàn)了交錯(cuò)使用,應(yīng)將老版本的組件徹底刪除干凈。

先是重裝Indy組件9.0.12。將Delphi7\Source\Indy目錄下的文件用新版覆蓋,然后重新編譯。將生成的dcu拷貝到LIb目錄覆蓋。

結(jié)果問(wèn)題依舊。

在delphi目錄下搜索id文件,發(fā)現(xiàn)Lib\Debug下有大量id*.dcu文件。可能是這些文件是舊版的。

于是采用9.0.12的dcu文件將其覆蓋,再次rebuild程序A,通過(guò)!

3,分析

那么為什么會(huì)和“Lib\Debug”目錄有關(guān)呢? delphi IDE配置了搜索目錄“$(DELPHI)\Lib”,但并未配置使用Lib下的Debug目錄呀。

其實(shí)新編一個(gè)工程,放入indy新版組件組件,即使Lib\Debug下有舊版組件,rebuild也是不會(huì)出錯(cuò)的。

分析發(fā)現(xiàn),這個(gè)“Lib\Debug”目錄和工程配置有關(guān)。原來(lái),本人想要debug程序A,于是在工程選項(xiàng)中勾選了“Use Debug DCUs”

此選項(xiàng)將自動(dòng)使用“Lib\Debug”目錄的dcu文件,而不是Lib目錄下的dcu。因?yàn)長(zhǎng)ib目錄下的dcu文件中不含調(diào)試信息。

此時(shí)我們打開(kāi)IDE的debugger選項(xiàng)窗口,可以發(fā)現(xiàn)IDE使用到了“Lib\Debug”目錄的dcu文件。

至此問(wèn)題得到了解決,并且做到了“知其然且知其所以然”!

以上這篇完美解決Indy 編譯提示版本不一致的問(wèn)題就是小編分享給大家的全部?jī)?nèi)容了,希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。

相關(guān)文章

最新評(píng)論