0

Crypto++ を使用しようとすると、LNK2001 エラーが発生します。これに対する公式のアドバイスは次のとおりです。

これに対処するには 2 つの方法があります。CRYPTOPP_DLL マクロを使用して、Crypto++ を変更してこれらのクラスをエクスポートするか、DLL エクスポート ライブラリと非 DLL クラスおよび関数を含む静的ライブラリの両方にリンクします。後者は、cryptlib プロジェクトの「DLL-Import」構成を使用してビルドできます。

最初のオプションを使用することをお勧めします。Visual Studio の使用経験がないため、マクロの場所と実行方法がわかりません。

要するに、マクロはどこにあり、どのように実行すればよいのでしょうか?

乾杯。

4

1 に答える 1

0

要するに、マクロはどこにあり、どのように実行すればよいのでしょうか?

マクロは、CRYPTOPP_IMPORTS. これは、Windows で動的リンクを実行するときに使用します (つまり、Crypto++ DLL)。

2 つの方法のいずれかで「実行」できます。まず、に追加でき#include <cryptopp/dll.h>ますstdafx.hdll.h.はそれを定義し、dll.h他の Crypto++ 定義の前に含める必要があります。次に、プロジェクトのプリプロセッサ マクロに追加します。どちらの場合も、CRYPTOPP_IMPORTS定義されます。

ただし、別のエラーがあると思われます。プロジェクトに Crypto++ ライブラリ (静的リンク用) または Crypto++ インポート ライブラリ (動的リンク用) を含めていない可能性があります。

于 2014-04-17T06:28:08.043 に答える