アプリケーション(exe)とDLLの違い

スポンサード リンク

このページではWindows環境におけるアプリケーション(exe)とDLLの違いに関して説明します。どちらもWindows環境での実行可能モジュールです。どのような違いがあるか説明します。


スポンサード リンク

(注意)分かりやすく簡単に記載しており、一部の環境や分野では記載内容が異なる可能性があります。あくまでも参考程度でお読みください。

比較表

比較は以下の表の通りとなります。

説明アプリケーション (exe)DLL
概要ソフトウェア、アプリケーション、サービスの本体他のアプリケーションから呼び出されるライブラリ。
実行直接実行可能。例えばユーザが exe をエクスプローラやコマンドプロンプトから実行が可能。直接実行できない。exe あるいは他のDLLなどからロードされる。
インスタンスOS内で複数実行が可能。一つしか実行できない。
リソースの扱いスタック、グローバル メモリ、ファイル ハンドル、メッセージ キュー等を持つことが可能。スタック、グローバル メモリ、ファイル ハンドル、メッセージ キューは持つことができない。
プロセスプロセスを起動するプロセスからロードされる
メモリアドレス独自のアドレスを持つ独自のメモリアドレスを持たない
正式名Executable FileDynamic Linking Library
main(entry point)プログラム実行のための main(entry point) が必要main(entry point)は持たない
使い分けアプリケーション、サービスなどのプログラムを作成する場合にメインプログラムとして作成する様々なアプリケーション、サービスなどから共通して呼ばれるライブラリを使用する。共通で使用される部分をDLLとして様々なexeからコールすれば消費メモリや開発コストが効率的になる。








【注意】本ページは著作権で保護されています。内容は何人も補償しません。時間的あるいは金銭的損失等、一切保証しません。

理解しやすく記載されており、一部不正確な記載がある可能性があります。ご自身の責任で参考にしてください。