この Delphi 7 コンパイル エラー「リ​​ソースの重複」を修正するにはどうすればよいですか

StackOverflow https://stackoverflow.com/questions/97800

  •  01-07-2019
  •  | 
  •  

質問

継承した Delphi 7 プロジェクトをコンパイルしようとすると、次のエラーが発生します。

[エラー] 警告。重複したリソース:
[エラー] タイプ 2 (BITMAP)、ID 編集:
[エラー] ファイル C:[短縮されたパス]\common\CRGrid.res リソースが保持されます。ファイル c:\common aptree.RES リソースが破棄されました。

警告と書かれていますが、実際にはエラーであり、コンパイルが完了しません。

CRGrid と RapTree という 2 つのコンポーネントが何らかの形で衝突しているようです。これを修正する方法について何かアイデアがある人はいますか?

もちろん、プロジェクトからコンポーネントの 1 つを削除する以外のことです。

役に立ちましたか?

解決

リソース エディタ (Delphi には必ずリソース エディタが付属していると思います) を起動して、ファイルを開いてみてください。2 つのビットマップ リソースにどのようなものがあるかを確認し、どちらが重複している可能性があるかを確認します。

両方のリソースを保持する必要がある場合は、いずれかのリソースの番号を付け直す必要があります。

他のヒント

コンポーネントに移動してリソースの 1 つの名前を変更し、新しい名前を使用するようにコンポーネント コードを更新する必要があります。痛みはありますが、できることはそれだけです。

これが古いスレッドであることは承知していますが、古いコードを維持している人にとっては更新する価値があります。

この問題は、RES ファイル内の画像が同じ名前になっていたことが原因でした。Delphi7 には、RES ファイルを開くことができるイメージ エディターが備わっています。重複リソース エラーに関係する両方の RES ファイルを開き、問題の重複リソースの 1 つの名前を変更するだけです。RES ファイルを保存して再コンパイルします。最近、Delphi 7 アプリの古いコンポーネントを(わずかに)新しいコンポーネントに置き換えたとき、2 回うまくいきました。

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top