2009-04-18 13 views
3

インストール用のビルドコンポーネントでは、登録ユニットは一般に「別にする」ことがわかっていますが、コンポーネントを分割するときのガイドラインはありますを2つの別々のパッケージにインストールします(通常は実行時ともう一方は設計時)。コンポーネントパッケージ - ランタイム、デザインタイム、登録などを分割する場所

ボーナスに関する質問:実行時パッケージとデザイン時パッケージが別々の場合に、受け入れられるパッケージ命名規則は何ですか?

+0

"Bonus question":D –

答えて

4

デザイナー、オブジェクトインスペクタ(プロパティエディタ...)またはコンポーネントの登録(アイコン、パレット情報...)とのやりとりのような、IDE内での使用に特有のものは、すべてデザインタイムパッケージ通常はdclが前に付けられます。

アプリケーションでコンポーネントを使用するために必要な最小限のものは、ランタイムパッケージに含まれます。デザインユニットへの参照は、実行時パッケージでは禁止されています。

デザインタイムとランタイムパッケージの接尾辞としてコンパイラのバージョン番号を使用するのが一般的です。dclMyPackage120.bplとMyPackage120.bpl(D2009はコンパイラのバージョン20.0で、VER200の定義はD2007それはバイナリ互換性のおかげでバージョン10.5と* 100.bplと* 105.bplの混在した袋でした。

+1

実際には、Delphiコンパイラのバージョンには、パッケージ自体のバージョンではなく、パッケージに接尾辞を付けるのが一般的です。また、私は現時点ではDelphiを持っていないので、私は現在調べることができません)、これを自動化し、対応する.dcp-Fileにそのサフィックスがないことを保証するいくつかの魔法のプロジェクト設定があります。パッケージのDelphi Wikiも参照してください:http://delphi.wikia.com/wiki/Creating_Packages – dummzeuch

+0

これはまさに私の意図です。私は自分の答えを更新しました。 –

+1

「dcl」は何を表していますか?誰かが確かに知っていますか? – Jamo

0

パッケージの名前は多分あなた次第ですが、他のプロバイダが使用しているパッケージ命名方式の1つを模倣しようとする必要があります。

適切なパッケージの命名の目的は、次のとおりです。1つのプロバイダの

  • グループパッケージや他のプロバイダのものを
  • 明確に別々のランタイムおよび設計時パッケージ
  • からそれらを分離様々のパラレルインストールを行います互換性のないバージョンの製品とDelphi/BCBのさまざまなバージョンが可能です

したがって、一般的にパッケージの名前はc会社/製品の短い文字の組み合わせ、バージョン番号の1桁または2桁、受け入れられたDelphi/BCBキー(D5、D2007、BCB6など)のいずれかです。設計時パッケージでは、通常、名前に "ds"などがあります。それ以外はランタイムパッケージと同じです。

+0

デザインタイムパッケージのプレフィックスは、VCLと私が知っているサードパーティライブラリのほとんどのdclです。 –

関連する問題