如下代碼的測試環境 vc++6.0ios
步驟 1.建立Dll工程c++
2.建立用來調用Dll的測試工程windows
1. 建立Dll工程函數
a.用vc++6.0建立一個dll(Dynamic~Link Library)工程測試
b.代碼: spa
BOOL APIENTRY DllMain( HANDLE hModule, DWORD ul_reason_for_call, LPVOID lpReserved ) { return TRUE; } extern "C" __declspec(dllexport) int add(int x,int y) { return x+y; }
extern "C" 表示在連接庫裏面生成原模原樣的函數,方便調用__declspec(dllexport) 表示dll導出的調用約定
編譯成功後,Debug目錄下會出現一個與工程名.dllcode
2.建立用來調用Dll的測試工程 io
a.建立一個控制檯程序 編譯
b.將上面生成的dll拷貝到該工做目錄下
class
c.代碼
#include <iostream> #include <windows.h> using namespace std; typedef int (*ExternAdd)(int ,int); int main(int argc, char* argv[]) { HINSTANCE hi=LoadLibrary("Dll2.dll"); if(hi==NULL) { cout<<"不能加載動態連接庫"<<endl; } ExternAdd p=(ExternAdd)GetProcAddress(hi,"add"); cout<<p(1,2)<<endl; FreeLibrary(hi); return 0; }