DLL-はじめに

ダイナミックリンクは、実行時にアプリケーションをライブラリにリンクするメカニズムです。ライブラリは独自のファイルに残り、アプリケーションの実行可能ファイルにコピーされません。DLLは、アプリケーションが作成されたときではなく、実行されたときにアプリケーションにリンクします。DLLには、他のDLLへのリンクが含まれている場合があります。

多くの場合、DLLは次のような異なる拡張子を持つファイルに配置されます .exe.drv または .dll

DLLの利点

DLLファイルを持つことのいくつかの利点を以下に示します。

より少ないリソースを使用します

DLLファイルはメインプログラムと一緒にRAMにロードされません。必要な場合を除いて、スペースを占有しません。DLLファイルが必要な場合は、ロードして実行します。たとえば、Microsoft Wordのユーザーがドキュメントを編集している限り、RAMにプリンタのDLLファイルは必要ありません。ユーザーがドキュメントを印刷することを決定した場合、WordアプリケーションはプリンターDLLファイルをロードして実行します。

モジュラーアーキテクチャを促進します

DLLは、モジュラープログラムの開発を促進するのに役立ちます。多言語バージョンを必要とする大規模なプログラムや、モジュラーアーキテクチャを必要とするプログラムの開発に役立ちます。モジュラープログラムの例は、実行時に動的にロードできる多くのモジュールを持つ会計プログラムです。

簡単な展開とインストールを支援

DLL内の関数の更新または修正が必要な場合、DLLの展開とインストールでは、プログラムをDLLに再リンクする必要はありません。さらに、複数のプログラムが同じDLLを使用している場合、それらすべてが更新または修正の恩恵を受けます。この問題は、定期的に更新または修正されるサードパーティのDLLを使用する場合に頻繁に発生する可能性があります。

コンパイルの一部としてモジュール定義ファイルのIMPORTSセクションでDLLリンケージが指定されている場合、アプリケーションとDLLは他のDLLに自動的にリンクできます。それ以外の場合は、WindowsのLoadLibrary関数を使用して明示的にロードできます。

重要なDLLファイル

以下に述べるのはいくつかの重要なことです dll ユーザーがプログラミングのために知っておくべきファイル-

  • COMDLG32.DLL −ダイアログボックスを制御します。

  • GDI32.DLL −グラフィックの描画、テキストの表示、およびフォントの管理のための多数の機能が含まれています。

  • KERNEL32.DLL −メモリおよびさまざまなプロセスを管理するための何百もの機能が含まれています。

  • USER32.DLL−多数のユーザーインターフェイス機能が含まれています。プログラムウィンドウの作成とそれらの相互作用に関与します。