[ホーム] > [間違えやすい類語 IT編一覧] > [アプリケーション(exe)とDLLの違い]
このページではWindows環境におけるアプリケーション(exe)とDLLの違いに関して説明します。どちらもWindows環境での実行可能モジュールです。どのような違いがあるか説明します。

(注意)分かりやすく簡単に記載しており、一部の環境や分野では記載内容が異なる可能性があります。あくまでも参考程度でお読みください。
| 説明 | アプリケーション (exe) | DLL |
| 概要 | ソフトウェア、アプリケーション、サービスの本体 | 他のアプリケーションから呼び出されるライブラリ。 |
| 実行 | 直接実行可能。例えばユーザが exe をエクスプローラやコマンドプロンプトから実行が可能。 | 直接実行できない。exe あるいは他のDLLなどからロードされる。 |
| インスタンス | OS内で複数実行が可能。 | 一つしか実行できない。 |
| リソースの扱い | スタック、グローバル メモリ、ファイル ハンドル、メッセージ キュー等を持つことが可能。 | スタック、グローバル メモリ、ファイル ハンドル、メッセージ キューは持つことができない。 |
| プロセス | プロセスを起動する | プロセスからロードされる |
| メモリアドレス | 独自のアドレスを持つ | 独自のメモリアドレスを持たない |
| 正式名 | Executable File | Dynamic Linking Library |
| main(entry point) | プログラム実行のための main(entry point) が必要 | main(entry point)は持たない |
| 使い分け | アプリケーション、サービスなどのプログラムを作成する場合にメインプログラムとして作成する | 様々なアプリケーション、サービスなどから共通して呼ばれるライブラリを使用する。共通で使用される部分をDLLとして様々なexeからコールすれば消費メモリや開発コストが効率的になる。 |
[ホーム] > [間違えやすい類語 IT編一覧]
,