DLLをビルドしようとしていますが、opensslパッケージのライブラリlibeay32.dllを参照する必要があります。[プロパティページ]->[共通プロパティ]->[新しい参照の追加]で参照として追加できないようです。どちらでもないため、「ファイル'C:\ OpenSSL\libeay32.dll'への参照を追加できませんでした」というエラーが表示されるためです。 NETアセンブリまたは登録済みのActiveXコントロール。[リンカー]->[入力]->[追加の依存関係]を使用して静的ライブラリ'C:\ OpenSSL \ lib \ libeay32.lib'を設定すると、コンパイルして実行できます。ただし、最終結果はIです。 libeay32.dllも含める必要があります。何が間違っているのですか?
1944 次
2 に答える
4
あなたはすべてを正しくやっています。「参照の追加」は、.NETアセンブリ(および.NET COM相互運用機能を介して使用されるCOMコンポーネント)用です。あなたが試した2番目のアプローチは、ネイティブコードに対してこれを行う正しい方法ですがlibeay32.lib、静的ライブラリではありません。これはDLLのエクスポートライブラリです。
于 2009-12-01T02:44:26.163 に答える
1
Pavel が述べたように、libeay32.lib は、アプリケーションを静的にリンクして実行できる完全なライブラリではありません。動的ライブラリである dll への参照を解決するために使用されます。そのため、アプリを実行するには dll が必要です。
于 2009-12-01T03:10:36.893 に答える