1. ホーム
  2. c++

Visual C++でインポートライブラリ(.lib)とDLLの両方をビルドするには?

2023-08-19 09:01:54

質問

DLL ファイルとインポートライブラリ (.lib) ファイルをビルドする単一の Visual Studio プロジェクトを持ちたいと考えています。 (インポートライブラリとは、それを使用する他のプロジェクトでその DLL ファイルをロードする世話をする静的リンクされたライブラリのことです)。

そこで、Visual Studio C++ 2008 Express Edition で、クラス ライブラリ タイプの新規プロジェクトを作成し、構成タイプを "Dyanamic Library (.dll)" に設定しました。

しかし、ソリューションを構築すると、関連する出力ファイルは DLL ファイルのみで、LIB ファイルが生成されるのを見たことがありません。 私は、プロジェクト ディレクトリとすべてのサブディレクトリ (Release と Debug) を調べました。

私は、LIB と DLL ファイルを同時にビルドすることが可能であると信じています。 には、"リンカーは DLL がビルドされたときにインポートライブラリを作成する、と書かれています。 また このサイトの別のユーザーは Visual C++ を使って LIB と DLL のファイルを同時に作成しています。 .

では、どうすればいいのでしょうか?

どのように解決するのですか?

クラス ライブラリ」を選択することで、誤って C++ の CLI (managed) 拡張を使用して .Net ライブラリを作成するように指示していました。

代わりに、Win32 プロジェクトを作成し、次のページのアプリケーション設定で、'DLL' を選択します。

また、そのルートに行きたい場合は、これらのライブラリの選択肢から MFC DLL または ATL DLL を作ることができますが、そうではないようですね。