0

プロジェクトにリンクすると、未解決のシンボル エラーが発生します。外部ライブラリにリンクしています。はい、構成を正しく設定しましたが、デバッグ時に外部ライブラリのすべてのクラスに対して次のエラーが出力されます。

error LNK2001: unresolved external symbol __CAP_EXIT_Function

プロジェクトは、外部ライブラリと同じランタイム dll を使用し、ライブラリのデバッグ バージョンにリンクします。

これでどこに行くべきかについての手がかりはありますか?

ところで、VS2008を使用しています

ありがとう

4

3 に答える 3

1

/callcap スイッチを使用しているようですが、コールバック関数を定義していないようです。前のリンクを参照して、コールバック関数を実装してください。

その他のライブラリ リンク エラーの場合。リンカー プロパティの追加インクルード セクションで .lib ファイルを指定していることを確認してください。

また、プロジェクトと同じソリューションに vcproj ファイルがある場合は、プロジェクトを右クリックして、他のライブラリの依存関係を設定できます。そうすれば、上記のように追加のライブラリを指定する必要はありません。

于 2009-11-11T16:30:07.557 に答える
0

必要なヘッダー ファイルをすべて含めていますか? まだ追加する必要があります

#include "MyDll.h"

dll への参照を追加し、それが配置されているディレクトリをインクルード ディレクトリ パスに追加した後でも。次に、そのようにdllの関数を使用できます。

MyDll::MyFunctions::Function();
于 2009-11-11T16:41:54.580 に答える
0

lib は C lib ですか? その場合、ヘッダー内の関数に extern "C" が必要ですが、それが欠落している可能性がありますか?

例えば

extern "C"
{
  void foo(); 
   ...
}

また

   extern "C" void foo();
于 2009-11-11T16:45:22.590 に答える