0

自分の数学ライブラリを含むdllを作成しました。ライブラリを使用すると、そのクラスといくつかの補間メソッドを使用できます。しかし、私のプログラムがこのdllから初めてクラスを作成すると、最初のチャンスの例外であるアクセス違反が生成されます。その後、すべてのクラスとそのメソッドで問題なく実行され、プログラムは正常に実行およびシャットダウンされます。これは私のコードが生成する唯一のエラーであり、明らかにリリースでの実行を停止します。

プロパティページに欠けているものはありますか?または、クラスメソッドvirtual METHOD()= 0を宣言する必要がありますか?(これをテストするために1つのクラスに追加することがたくさんあるので、私はこれを求めています)。

/ VERBOSEを使用してリンカーステージを確認しましたが、問題なくdllが生成されました。私はこの問題に非常に困惑しています。ファーストクラスの作成時にこの問題が発生するのは奇妙に思えますが、その後は問題ありません。

どんなヒントも最も役に立ちます、私は今このエラーで何時間も無駄にしました。

ありがとう。

4

1 に答える 1

1

解決しました!dllのコンパイル時に、VS2010によって生成されたdllmain.cppがありません。他の誰かがこのファイルを生成しなかった場合:#include "stdafx.h" BOOL APIENTRY DllMain(HMODULE hModule、DWORD ul_reason_for_call、LPVOID lpReserved){switch(ul_reason_for_call){case DLL_PROCESS_ATTACH:case DLL_THREAD_ATTACH:case DLL_TH }はTRUEを返します。}

于 2012-09-15T04:39:12.800 に答える