1

2つのDLLがCoreありExtensionます。 Extension暗黙的にリンクしますCore(Core.libを使用)。 Extensionも暗黙的にリンクする実行可能ファイルへのプラグイン(明示的にリンクされる)であることが意図されていますCore

CoreCore.dll(extern "C" __declspec(dllexport) int GetCoreVersion())でエクスポートされる関数を宣言します。これもExtension.dllでエクスポートしたいと思います。

意図された目的はバージョンを比較することです-プラグイン(Extension)が実行可能ファイルと同じバージョンのCore.dllに対してリンクされていることを確認できるようにしたいです。LoadLibraryこのチェックは、Extension.dllを(およびを介して)明示的にリンクするため、実行可能ファイルで実行されますGetProcAddress。もっと良い方法はありますか?

4

1 に答える 1

0

拡張機能に以下を追加しました。これにより、GetCoreVersionシンボルがエクスポートされます。

#pragma comment(linker, "/export:_GetCoreVersion");

これで、実行可能ファイルは(を介して)関数を見つけることができますGetProcAddress("GetCoreVersion")

于 2013-01-17T15:57:07.637 に答える