プログラム単体で動作するEXEファイル
BCB Tips!
Last modified : 2006/05/09
■
BCBで作成されるEXEファイル
インストールした直後の状態で作成したアプリケーションは、EXEだけを配布しても動作しない。 これは外部DLLやパッケージを使って EXE ファイルのサイズを小さくするためで、 このEXEを他の環境(C++Builderがインストールされていない環境)で動作させるためには、 VBでいうVBランタイム、MFCでいうMFC42.dllなどにあたる複数のDLLファイルなどを提供する必要がある。 (実際にはDLLの他にも、*.BPLという拡張子のBCB独自の拡張ライブラリなどが必要となる)
BCBでは、簡単な設定でランタイムが必要ない実行ファイルを作成することが可能である。ちょっとした プログラムを配布する際や、利用者のパソコンに新たにDLLを書き込ませたくない場合など有益である。
■
設定方法
プログラム単体で動作するEXEファイルを作成するには、メニューバーの [ プロジェクト(P) ] → [ オプション(O) ] で以下の設定を行う。
デバック情報を作成
では、EXEファイルにデバック情報を含ませるか否かを指定できる。最終的な実行ファイルには、
デバック情報をつける必要がないため、このチェックボックスを外す。外すことでプログラムサイズも小さくなる。
共有 RTL DLL を使う
では、EXEファイルに実行時に必要となるランタイムライブラリのDLLを含ませるか否かを指定できる。
プログラム単体で実行可能なEXEファイルを作成するには、このチェックボックスを外す。
デバックライブラリを使う
では、EXEファイルにライブラリソースコードをトレースするための情報を含ませるか否かを指定できる。
デフォルトでは、チェックボックスが外れているのでそのままとする。このオプションを有効にするとプログラムサイズは大きくなるが、
プログラムの性能には関係ない。
実行時パッケージを使って構築
では、パッケージライブラリを BPL(Borland Package Library)ファイルに含めるか、EXEファイルに含める
かの指定を行う。プログラム単体で実行可能なEXEファイルを作成するには、このチェックボックスを外す。
パッケージは,C++Builder のアプリケーションおよび IDE またはその両方によって使用される特別なダイナミックリンクライブラリである。 実行時パッケージはユーザーがアプリケーションを実行するときに使用し、設計時パッケージはIDE にコンポーネントをインストールして、 カスタムコンポーネント用の特別なプロパティエディタを使用するために使う。
パッケージは設計時と実行時の両方で機能し、設計時パッケージは実行時パッケージを頻繁に呼び出して動作する。 パッケージライブラリは,その他の DLL と区別するため,.BPL(Borland package library)という拡張子を持つファイルに格納される。
■
参考
書籍
C++Builder6 コンポーネント活用ガイド&実践プログラミング Vol.4
P36
ヘルプ
パッケージとコンポーネントの操作
キーワード:「パッケージ,概要」
ヘルプ
リンカ(プロジェクト|オプション)
キーワード:「リンカページ」→「リンカ(プロジェクト|オプション)」