私は、相互に継承する一連の TFrame ベースのコンポーネントを開発しています (途中で私を大いに助けてくれた多くの人がすでに知っているように!)、パッケージとインストールに関連するさらに別の小さな「障害」に遭遇しています。
基本的に次の階層があります。
TFrame
TBaseFRame
TBaseSizeableFrame
TViewerType1
TViewerType2
...そしてパネルTExtRzPanelは、Raize パネルから継承し、いくつかのサイズ変更/移動機能を追加し、他のいくつかのプロパティ/機能も備えています。TBaseSizeableFrameはこのコンポーネントを使用し、その機能の多くをフレーム自体に渡します。そのため、Viewer の複合コンポーネントを視覚的に開発できます。全体的にうまく機能します。
TFrame の子孫はすべてパレットに登録されています ( 関連する質問については、この投稿を参照してください)。現在、次のようにパッケージを設定しています。
- MyPanels - TExtRzPanel を含む
- BaseFrames - TBaseFrame と TBaseSizeableFrame を含む
- ViewerSet1 - 1 つの Viewer フレームベース コンポーネントと、その Viewer をダイアログ フォームとして呼び出す非ビジュアル コンポーネントが含まれます。(このパッケージには、他のいくつかのビューアーも含める予定です)。
私の現在の混乱を引き起こした主なエラーは次のとおりです。
パッケージ 'MyPanels.bpl' のパッケージ情報にアクセスできません
私が試したことの正確なシーケンスとその順序を思い出すのに苦労しているので、私はこのことで十分にめまいがしていますが、TViewerを使用するViewerSet1にダイアログフォームを追加したときに問題が始まったようです同じプロジェクトのフレームであり、(もちろん) TExtRzPanel (IDE が不満を言っているパッケージ) を使用します。
これに基づいて、DCPファイル(およびDCUファイルもある時点であると思います)を削除し、パッケージをアンインストールしてから、MyPanels-> BaseFramesを再コンパイル/再インストールし、その時点まですべてが機能するようにしましたが、インストール時にViewerSet1 全体が再び吹き飛ばされます。これを理解しようとする途中で気付いたその他のエラーには、次のものがあります。
- パッケージ C:\Documents and Settings\All Users\Documents\RAD Studio\5.0\Bpl\MyPanels.bpl は、別のバージョンの Delphi または CBuilder で作成されているため、インストールできません。次回プロジェクトをロードするときに、このパッケージのロードを試みますか? (注: 私は Delphi の 1 つのバージョン -- Delphi 2007 でのみこれを構築しました)
- ある時点で、MyPanels のパッケージの説明が "取得" されていないことに気付きました (つまり、ファイル名が [ツール] -> [コンポーネント] -> [パッケージのインストール] のように表示されました)。 IDEが見つけたり使用したりしているファイルですが、私はそれを見たり見つけたりしていません。
- 起動時に Delphi が表示する警告は、インストール済みのパッケージをロードできないこと、次回ロードしますか、などを示します。
- パッケージ 'MyPanels.bpl' のパッケージ情報にアクセスできません (泡立て、すすぎ、繰り返し)
すべてのヘルプ/指示: 診断方法と、何を探すべきかを理解するのに役立つ概念的な説明があれば、最も高く評価されます。前もって感謝します。皆さん、ここでとても役に立ちました!ありがとうございました。: )
後で更新:
これを少し脇に置いて戻ってきた後、すべての DCP / DCU MyPanels ファイルを削除してから、3 つのパッケージを段階的にインストールしてみました。(VMWare は、ここで金の価値がありました。問題が発生した場合に最初からやり直す必要がないように、成功するたびにスナップショットを作成します)。ViewerSet1 パッケージからダイアログ フォームを削除すると、問題なくインストールされることがわかりました。次に、フォームを再度追加すると ( ここで遭遇したように、DFM には表示されません)、正常にインストールされるようです。すべてのコンポーネントがインストールされておらず、正常に動作しているように見えます (そして、VM 内の全体のスナップショットを作成します!) が、何が問題なのか、その理由はまだわかりません。そのフォームを追加すると、最初に何ができて、これらの種類のエラーが発生するのでしょうか? 何か案が?
「パッケージ情報にアクセスできません」というエラーがどのような原因で発生する可能性があるかについてのより良い説明/理解は、長期的には役立つと思います.