VS2019 C ++ダイナミックリンクライブラリを使用して作成

静的ライブラリ:関数やデータをコンパイルすると、静的ライブラリの場合には、通常、拡張子の.libと、バイナリファイルにコンパイルし、実行可能ファイルをリンクし、ライブラリからコピーされたリンカ機能とデータとそれらを取るされます一緒に最終的な実行可能ファイルを作成するアプリケーションの他のモジュール。

DLL:多くの場合、1つのDLLとライブラリの導入である2つのファイルを、提供し、インポートライブラリはDLLによってエクスポートされる関数や変数のシンボル名が含まれている、DLLは、実際の関数とデータが含まれています。コンパイルと実行可能ファイルをリンクした場合、単にインポートライブラリをリンクし、DLL関数のコードとデータは、実行可能ファイルにコピーされていない、実行時に、DLLをロードして行く、DLLのエクスポート機能にアクセスしてください。

DLLを使用する利点: 1.あなたはプログラミング言語の多様性を使用することができます。製品の2つの機能強化; 3は、二次開発プラットフォームを提供するために、4プロジェクト管理、開発を簡素化し、5はディスク容量とメモリを節約できます.... 、複数のプログラムが同じリソースを使用します。6.リソースの共有を促進する; 7は、アプリケーションをローカライズするのに役立ちます。

DLLは2つの方法でロードされます。

暗黙的なリンク:

二つの新しい加減算機能で新しい手順①DLL、。

 

 プロジェクトフォルダにDEBUGファイルを開いてコンパイルしたら、生成されたDLLファイルを見ることができます。

 

オープンコマンドCMDベッドオープン、このコマンドが追加する必要がDUMPBIN認識しない場合は、DLLから得られた情報を見ることができ、パス(ファイルパスの複製、すなわち、右ペーストコマンドウィンドウ)、エクスポートしDll1.dll DUMPBIN入力を切り替えます環境変数(私のインストールパスがあります。C:\ Program Files(x86の)\ 2019 \プロフェッショナル\ VC \ツール\のMicrosoft Visual Studioの\ MSVC \ 14.23.28105 \ binに\ Hostx64 \ x64の)

 

 

 我々はコードに戻り、各機能名の前に_declspec(DLLEXPORT)を大きくし、再コンパイル、結果として得られるファイルは、ライブラリの初期導入言われDll1.libファイルよりも見出さ。

 

 オーバーロードされた関数とC ++は、関数名がシンボル内部コンパイラディスプレイの束によって識別されますので、その後、cmdのコマンドを再実行して、あなたは、私たちは関数をエクスポートした情報を見ることができます。

 

 テスト結果:再新しいC ++コンソールプログラム、追加およびサブ関数を呼び出し、追加のライブラリの依存関係プロパティでDll1.libを追加し、ディレクトリ(Dll1.libとDll1.dll)にファイルをコピーします。

 

 同じ試験手順はDUMPBIN入力ファイル情報を表示するために使用することができ

 

おすすめ

転載: www.cnblogs.com/asce/p/11621588.html