LIBとDLLの違い

Anonim

LIBとDLL

ソフトウェアを開発するときに、アプリケーションの関数を含むためにLIBまたはDLLを使用するかどうかを尋ねられます。 LIBは静的ライブラリで、アプリケーションのコンパイル時に関数とプロシージャを配置して呼び出すことができます。 DLLまたはダイナミックリンクライブラリは、同じ機能を実行しますが、コンパイル中ではなく実行時にアプリケーションがこれらのライブラリを呼び出すことができるという意味では動的です。これは、LIBを使用する場合と比較して、いくつかの大きな利点があります。

<!まず、すべてのコードが含まれているために1つのファイルが大きくなりますが、DLLを使用する場合は複数の小さなファイルを持つことになります。関数とプロシージャをコンパイルすることで、DLLの関数がうまくいけば、アプリケーションの各バージョンと同じように保つことができ、使いこなすことができるので、再利用性が向上します。同じ関数とプロシージャを使用する別のアプリケーションを作成する場合は、同じDLLを使用することもできます。 LIBで行う必要があるように、ソースからコードをコピーするのではなく、DLLに直接リンクすることができます。

<! --2 - >

DLLの問題は、DLLの内容を変更したときです。これにより、問題の原因となっている不正なバージョンのDLLがアプリケーションで使用されるバージョンの問題が発生する可能性があります。これらの問題を回避するには、DLLを追跡する必要があります。大きなファイルを1つだけ取得するので、LIBでこの問題は発生しません。

ソフトウェアを開発してDLLを選択するときは、プロジェクトにLIBファイルが残っています。しかし、LIBを使用する場合とは異なり、このファイルには関数とプロシージャのコードは含まれていませんが、プログラムがDLLからプロシージャを呼び出す必要があるスタブだけが含まれています。

<! - 3 - >概要:

1。 DLLは、実行時にアプリケーションによって呼び出される関数を含むライブラリです.LIBは、コンパイル中にコードを呼び出す必要がある静的ライブラリです(

2)。 LIBを使用すると、1つのファイルがかなり大きくなり、DLLの

3の複数の小さなファイルになります。 DLLは、新しいバージョンやまったく新しいアプリケーションを書くときにLIBよりも再利用可能です

4。 DLLファイルは他のアプリケーションで使用できますが、LIBファイルは使用できません

。 LIBは

ではありませんが、DLLではバージョニングの問題が発生しがちです。 ÂDLLを使用してソフトウェアを開発するときにはLIBファイルが作成されますが、スタブのみが含まれます。