DLL(Dynamic Link Library)とは、windows用の実行ファイルの一つである。
概要
DLLは実行ファイルだが、EXEファイルとは違い、ダブルクリックしても実行できない。
どうやって実行しているのかというと、他のEXEファイルがDLLファイルの機能を呼び出しているのである。
何度も使う機能を、様々なソフトから利用できるようにしたのがDLLである。
解説
プログラマがプログラムを書く際に、画面表示や入力、ファイル操作などを一からすべて書いていては非常に効率が悪い。そこで、ある一定の機能を持ったプログラム(又はその集合)をライブラリ(Library)と言う形で作っておき、使い回しが効くようにしてある。
MS-DOSのように一度に1つのプログラムしか実行できないOSでは、ライブラリを全て実行ファイルに組み込んでも変わりがないが、Windowsでは複数のプログラムが1つのライブラリを同時に使う事はかなり多い。後述のAPIなどは特に多く、1つ1つのプログラムがライブラリを内蔵しているとメモリの無駄になる。
そこで、重複するものは1つだけ読み込み、共有するようにするためにDLLが使われるのである。動的(実行中、Dynamic)にプログラム本体(exe)と結合(Link)されるライブラリなのでDLLと呼ばれているわけである。
DLLの主な用途
主にDLLは、APIやプラグインとして利用されている。
APIとしての利用は、user32.dllやkernel32.dllなどのwindowsAPIがある。
ブラウザのプラグインも、一部はDLLを追加することで実現されている。
.NET FrameworkのDLL
.NET FrameworkでのDLLはCLR(共通言語ランタイム)と呼ばれ、C#やVisual Basicでクラスを呼び出すことができる。アプリケーション開始時にCIL(共通中間言語)に変換される。
Win32形式のDLLを「アンマネージドDLL」と呼ぶ。COM形式のDLLは参照設定して呼び出すことができる。アンマネージドDLLはSystem.Runtime.InteropServices名前空間にあるDllImport属性で呼び出すことができる。
関連商品
関連コミュニティ
関連項目
-
ご経験とご希望に応じたキャリアをご提示することが可能!「理想の空間」をカタチにする”店舗内装の設計デザイナー/施工管理”/直行直帰&リモート相談年収400万円~1,000万円
-
経験必須/40万〜70万円/アプリエンジニア/小竹向原駅周辺/一部リモートあり/フリーランス月給40万円~70万円
-
「定員残りわずか!」未経験採用枠/Webデザイナー/プライベート充実月給25万円~60万円
-
経験3年必須/プロダクトオーナー候補/成長性の高いプロダクトの企画.運営年収850万円~1,300万円
-
「残業なし 」デザイナー・ディレクションのお仕事/広告・カタログ・印刷物の制作会社時給1,500円~
-
未経験可/研修充実/システムエンジニア月給28万円~50万円
- 2
- 0pt

