2012-12-20 16 views
8

[DCC致命的なエラー] Unit1.pas(7):見つからなかったF1026のファイル: 'MyBitBtn.dcu'デルファイ:欠落しているDCU

Unit1はテスト目的のためのVCLフォームです。

TBitBtnから派生したカスタムコンポーネントを含むデザインタイムパッケージをインストールしました。 Delphi IDEでMyBitBtnを読み込み、デザイン時にコード化したカスタムイメージをロードして、少なくとも視覚的にうまくいくように思えます。私はテストプロジェクトをコンパイルしようとすると、上記のコンパイル時エラーが発生します。

1つのデザインタイムパッケージと1つのランタイムパッケージを持つパッケージグループがあります。デザインタイムパッケージはコンポーネントを登録し、ランタイムパッケージはTBitBtnを継承し、そこにカスタムコードを持ちます。 デザインタイムパッケージには、必要なセクションにランタイムDCPファイルが含まれています。

テストフォームにカスタムボタンを挿入すると、IDEによってMyBitBtnファイルのUSES句が作成されます。そのファイルは明らかに見つからない。それはインストールされたパッケージの一部ではありませんか?

答えて

11

ほとんどの場合、ランタイムパッケージに 'Unit output directory'オプションが設定されていない可能性があります。パッケージ.dcuは利用できません。私は通常$(BDSCOMMONDIR)\Dcpに設定して問題はありません。

lib path:あなたはあなたのパッケージがどのプロジェクトに利用できるようにしたい場合は

一般的に、ランタイムパッケージの.DCU年代には世界的なIDEのライブラリパスを介して利用可能であるべきです。

既存のパスのいずれかを使用するか、独自のパスを追加する必要があります。

+0

これは私の問題を解決しました。 – Alex

+0

これは、**別のパッケージが必要なパッケージをインストールする際に最も謎の問題の1つです!どうもありがとう! –

2

システム環境でこのdcuが格納されているパスを定義します。そして、それをDelphiのenvパスに含めるのを忘れないでください。

3

デザインパートは機能しますが、実行時にコンパイラはdcuを見つけることができなければなりません。 これを行うこともできます。

  1. dcuフォルダをIDEのライブラリパスに追加します。
  2. プロジェクトの検索パスにdcuフォルダを追加します。
  3. または、dcuをプロジェクトに明示的に追加します。

私は最初のオプションを選択します。インストールされたコンポーネントなので、どのプロジェクトでも使用できるようにするため、ライブラリパスを設定することが最も理にかなっています。

0

ZEOSファイルに移動し、パッケージを開き、バージョン(DelphiXE10/Delphi7 ...)を選択し、Win32ファイルに移動して開き、Debugフォルダを開きます。すべてのものをコピーし、プログラムファイル、Embarcadero、スタジオ、17.0、lib、Win32、デバッグと貼り付け、すべてのwin32フォルダで同じ作業をしてください...

関連する問題