1

Delphi XE2 アプリを Delphi XE5 に移行する作業を進めています (ウィンドウがあります :) )

移動の一環として、社内アプリケーションに独自のユニット スコープを追加することを考えるべきかどうか疑問に思っています。 この質問は、ユニットの名前をCompany.Unitに変更した場合にのみ発生することを示唆しています。

Project Manager で Renameを使用するのと同じくらい簡単ですか?

何か不足していますか?

4

2 に答える 2

3

それはほとんど簡単です。プロジェクト マネージャーで [名前の変更] アクションを使用すると、ファイルの名前が変更され、ユニットに新しい名前が付けられ、.dpr および .dproj ファイル内の参照が変更されます。ただし、コード内の参照の名前は変更されません。

したがって、uses句にユニットをリストする場合 (そうする可能性が高いと思われます)、またはユニット名を使用してあいまいなスコープを解決する場合は、そこでも名前を変更する必要があります。

ユニットが多すぎない場合は、プロジェクト マネージャーで変更を加えて、コンパイラがスローするすべてのエラーを修正することはそれほど難しくありません。大規模なプロジェクトがある場合は、変更をスクリプト化する方が適切な場合があります。次のことを行う単純な正規表現ベースのスクリプトを使用して、99% の方法でそこに行くことができると思います。

  1. .dpr および .dproj ファイル内の参照を更新します。
  2. ファイル名とユニット名を変更します。
  3. uses 句 (インターフェイスおよび実装セクション) を見つけて、そこで参照を更新します。

これにより、スコープ解決を実行する使用法に対処する必要が生じます。私の推測では、コンパイラーがそれらをすべて見つけられるようにするのに十分な数はないと思います。

于 2013-09-30T08:44:34.133 に答える
2

そのタスクには、 http ://www.easy-ip.net (DELPHI UNIT DEPENDENCY SCANNER)の優れたツールを使用します。ユニットの名前を変更でき、DUPS はすべての uses 句を変更します。

于 2013-10-01T05:24:55.253 に答える