私は現在、C++ (MSVS 2008) で独自のフレームワークを作成しています。これは、フレームワークのユーザーが使用/呼び出しするための一連の関数を含む dll をエクスポートします。私のプロジェクトがまだ小さかった当初、すべてがうまくいきました。プロジェクトをコンパイルしました。MyFramework.dll と MyFramework.lib が吐き出されました。私はユーザーのふりをしました。MyFramework.dll ファイルを新しい VS プロジェクトの Debug フォルダーに配置し、MyFramework.lib と MyFramework.h ファイルをプロジェクト フォルダーに配置し、#include-d MyFramework.h をコードに追加すると、(まだ単純な) を呼び出すことができます。私の新しいプロジェクト内からのフレームワーク関数。
しかし今、私はフレームワークを拡張しました。独自の外部 dll (Graphics.dll と呼びましょう) を使用し、同じ方法でインクルードしました (Debug フォルダーの .dll、プロジェクト フォルダーの .lib/.h、コードの #include Graphics.h)。
問題は、MyFramework.dll/MyFramework.lib を作成し、それを新しいプロジェクトに含めてビルドすると、リンカが、明らかに MyFramework.dll のどこかに含まれていた Graphics.h を含めることができないと文句を言うことです。
だから私の質問。MyFramework.dll のユーザーは、プロジェクトに MyFramework.* ファイルを含めるだけで済み、MyFramework で使用することにしたすべての外部ライブラリをコピーして貼り付ける必要はありません。どうすればこれを達成できますか? このスレッドを見てみました。既存のアイテムを追加し、「追加」ボタンの横にある小さな矢印を押すことについて何か言っていますが、... 私のバージョンの MSVS には矢印が存在しません...
助けていただければ幸いです。
敬具 W.スペック