我已经在XE2中启动并运行了我的Delphi应用程序。 我正在使用IDE提供的fastreport。
当我尝试从Delphi XE2迁移到delphi 10.1时,我遇到了快速报告的问题。
[dcc32 Fatal Error] fs_isysrtti.pas(615): F2051 Unit fs_iinterpreter was compiled with a different version of fs_isysrtti.TfsSysFunctions
我在tools->选项中添加了lib路径。 这可能有什么问题?
答案 0 :(得分:0)
错误消息表示它的含义:fs_isysrtti的当前版本与编译fs_iinterpreter时的当前版本之间存在不匹配。这可能是因为编译器在它应该找到之前找到了fs_iinterpreter.dcu的过时副本。尝试在你的机器上搜索这个.dcu文件的版本,然后重命名/隐藏除最新版本之外的所有版本(或者编译器尝试将fs_isysrtti编译到同一输出文件夹中的那个文件,这有希望是同样的事情)。
如果您的系统与我的系统类似(我安装了XE4到D10西雅图),您会发现这些dcus的多个版本(fs_iinterpreter.dcu,即)。
假设此过程删除了编译器的投诉,请逐个恢复您重命名或隐藏的dcus,直到问题重新出现,然后您知道哪个副本导致了问题。然后弄清楚D10.1编译器如何管理以找到它并阻止它。可能,编译器搜索路径导致它在正确的位置之前查找错误的位置。
不幸的是,即使您设法找到导致问题的.dcu,您也可能会发现编译器对另一个快速报告提出了类似的抱怨.dcu。如果是,那么您最简单的选择可能只是隐藏/重命名所有FR文件并重新安装。
答案 1 :(得分:0)
卸载FR,再次安装并从LibD24文件夹中删除pas文件 要么 安装Delphi 10.1 Berlin的所有更新并使用最新的FR 5.5.11