3

私のDelphiXEアプリケーションは数日までは問題なく、何が悪いのか理解できません。私のプロジェクトレイアウト:

  • ビジュアルコントロールはメインフォームにあります
  • これらのコントロールのアクションと画像リストはデータモジュールにあります

プロジェクトを開くと、メインフォームには、コントロールに関連付けられているはずの画像やアクションがありません。コンパイルすると、「モジュール'winMain'は現在のプロジェクトに見つからないモジュール'modGeneral'にリンクしています。リンクを削除/別のモジュールにリダイレクトしますか?」というエラーメッセージが表示されます。

回避策:プロジェクトを開いた後でメインフォームを閉じ、プロジェクトマネージャーでモジュールをダブルクリックしてIDEでモジュールを開き(はい、現在のプロジェクトにあります)、メインフォームを再度開きますフォーム:すべてのアクションと画像が正しく表示されるようになりました。

Delphiの既知のバグは何だと思いますか?私のプロジェクトに問題がありますか?

4

2 に答える 2

7

.dprファイルを確認してください。問題を再現する1つの方法は、その中のuses句を変更することです。正常に機能するこの例を考えてみましょう。

program Project1;

uses
  Forms,
  Unit1 in 'Unit1.pas' {Form1},
  Unit2 in 'Unit2.pas' {DataModule2: TDataModule};

{$R *.res}

begin
  Application.Initialize;
  Application.MainFormOnTaskbar := True;
  Application.CreateForm(TForm1, Form1);
  Application.CreateForm(TDataModule2, DataModule2);
  Application.Run;
end.

プロジェクトマネージャのアイコンは、dfmを使用するモジュールでは通常どおりに表示されます。

プロジェクトマネージャーのスクリーンショット1

コメントを削除するか、コメントアウトする場合:

program Project1;

uses
  Forms,
  Unit1 in 'Unit1.pas' {Form1},
  Unit2 in 'Unit2.pas'; // {DataModule2: TDataModule};

{$R *.res}

begin
  Application.Initialize;
  Application.MainFormOnTaskbar := True;
  Application.CreateForm(TForm1, Form1);
  Application.CreateForm(TDataModule2, DataModule2);
  Application.Run;
end.

ここで、アイコンが変更されました。

プロジェクトマネージャーのスクリーンショット2

...そしてあなたはあなたが説明するエラーを受け取ります。変更を有効にするには、プロジェクトを閉じてから再度開く必要があります。

于 2011-09-14T15:29:21.523 に答える
0

TOndrejの答えは完全で正しいです。コメントとして投稿する必要のある小さな追加がありますが、目立たないのではないかと思います。ユニットの名前変更とプロジェクトファイルのリファクタリングの後で、説明されているエラーに直面しました(実際には、セクションinからすべてのコメントとコメントを削除しましたuses)。使用セクションで必要なパターンを返しましたが、それでもエラーが発生しました。私の間違いは、usesセクションのコメントに追加した配置でした。

DMMain     in 'DMMain.pas'     {fdmMain    : TDataModule},
DMIndex    in 'DMIndex.pas'    {fdmIndex   : TDataModule},

驚くべきことに、それは本当に重要です。アライメントを削除する

DMMain     in 'DMMain.pas'     {fdmMain: TDataModule},
DMIndex    in 'DMIndex.pas'    {fdmIndex: TDataModule},

エラーを修正し、動作するようになりました。

于 2014-05-03T10:01:02.243 に答える