掲示板システム
ホーム
アクセス解析
カテゴリ
ログアウト
ロード出来るけど関数ポインタが取得できない(DLL) (ID:53545)
名前
ホームページ(ブログ、Twitterなど)のURL (省略可)
本文
解決となっていますが……。 > がしかし、declspec で明示的リンクをする方法がわかっていません。 やり方は基本的にDEFファイルでも一緒です。 つまり,DLLでエクスポートされた関数名をGetProcAddressに指定してやればよいのです。 シャノンさんが書かれているように, extern "C" int __declspec(dllexport) __stdcall add(int a,int b); と宣言されている関数は,VC++でエクスポートした場合, おそらく_add@8という名前でエクスポートされます。 その為, pFunc = (MYFUNC)GetProcAddress(hDLL,"_add@8"); の様に,addではなく_add@8という名前を使えばちゃんと利用できます。 _add@8という名前は,MAPファイルを調べるなりdumpbin.exeを使うなり, Dependency Walkerを使うなりすれば知ることができます。 http://www.dependencywalker.com/
←解決時は質問者本人がここをチェックしてください。
戻る
掲示板システム
Copyright 2021 Takeshi Okamoto All Rights Reserved.