2017-02-01 35 views
0

私はDelphiアプリケーションをXE2で起動しています。 IDEで提供されているfastreportを使用しています。Delphiの移行速報問題

Delphi XE2からDelphi 10.1に移行しようとしたとき、私はfastreportの問題を受け取ります。

[dcc32 Fatal Error] fs_isysrtti.pas(615): F2051 Unit fs_iinterpreter was compiled with a different version of fs_isysrtti.TfsSysFunctions 

tools-> optionsにlibパスを追加しました。 ここでは何が問題になるのですか?

答えて

0

エラーメッセージは、fs_isysrttiの現在のバージョンと、fs_iinterpreterのコンパイル時に現在のバージョンとの間に不一致があることを意味します。これはおそらく、コンパイラが見つけ出す前にfs_iinterpreter.dcuの古いコピーを見つけているためです。マシンにこの.dcuファイルのバージョンを検索し、最新のファイル以外のすべての名前を変更するか隠すか(コンパイラがfs_isysrttiをコンパイルしようとしているのと同じ出力フォルダ内にあるものとします。

あなたのシステムが私のようなもの(私はXE4 to D10 Seattleがインストールされています)の場合、これらのdcusのいくつかのバージョンが見つかります(fs_iinterpreter.dcu)。

この手順を実行すると、コンパイラの苦情が取り除かれると仮定して、問題が再現するまで名前を変更または隠したdcusを1つずつ元に戻し、問題の原因となっているコピーを確認します。次に、D10.1コンパイラがどのようにそれを見つけてそれを防止するのかを管理します。おそらく、コンパイラの検索パスによって、正しい場所の前に間違った場所が表示されている可能性があります。

残念ながら、問題の原因となっている.dcuを見つけても、コンパイラが別のFast Report .dcuについて同様の苦情を申し立てることがあります。もしそうなら、あなたの最も簡単なオプションは単にすべてのFRファイルを隠したり名前を変更して再インストールすることです。

+0

を使用し情報をいただき、ありがとうございます。 ここでの問題は、テストアプリケーションでfastreportが動作することです。この特定のアプリケーションでのみ問題が発生します。パスに何か間違っている可能性があります。 – poonam

0

アンインストールFR、もう一度それをインストールし、デルファイ10.1ベルリンのためのすべての更新プログラムをインストールLibD24フォルダ または からPASファイルを削除し、最新のFR 5.5.11

+0

これは他のすべてのアプリケーションや移行されたものでも正常に動作します.1つのアプリケーションでのみ問題が発生します。 – poonam

+0

このエラーメッセージは、FRのパッケージが別のDelphi 10.1ビルドでコンパイルされたときに表示されます。 LibD23フォルダにいくつかのpasファイルがあると、それらは再コンパイルされ、このエラーが発生します。 FRの再インストール後にpasファイルを削除するか、最新のFRを最新のDelphiで使用する必要があります。他に解決策はありません – gpi