掲示板システム
ホーム
アクセス解析
カテゴリ
ログアウト
ロード出来るけど関数ポインタが取得できない(DLL) (ID:53539)
名前
ホームページ(ブログ、Twitterなど)のURL (省略可)
本文
使い方がよくわからなくて困っています。 (どこか良いサイトがあれば教えてください) 同プロジェクト内にワークスペースを2つ作成し 片方を「Win32 Console App」、もう片方を「Win32 Dynamic-Link..」 にしています。 色々なサイトを徘徊し、以下のようにコーディングしました。 DLLのロードは出来るのですが、関数ポインタが取得できません。 あと、何をしないといけないのでしょうか? Appの方↓−−−−−−−−−−−−−−− #include "windows.h" #include "stdio.h" typedef int (__stdcall *MYFUNC)(int, int); MYFUNC pFunc; void main(){ HINSTANCE hDLL; hDLL = LoadLibrary("..\\DllTetst\\Debug\\DllTetst.dll"); if (hDLL != NULL){ pFunc = (MYFUNC)GetProcAddress(hDLL,"add"); if (!pFunc){ FreeLibrary(hDLL); // 解放 return; } printf("answer = %d\n",pFunc(1,3)); } FreeLibrary(hDLL); } DLLの方↓−−−−−−−−−−−−−− #include <windows.h> #ifdef __cplusplus extern "C"{ #endif int __declspec(dllexport) __stdcall add(int a,int b); #ifdef __cplusplus } #endif BOOL WINAPI DllMain( HINSTANCE hDLL,DWORD dwReason,LPVOID lpReserved ){ return TRUE; } int __declspec(dllexport) __stdcall add(int a,int b){ return a+b; }
←解決時は質問者本人がここをチェックしてください。
戻る
掲示板システム
Copyright 2021 Takeshi Okamoto All Rights Reserved.