vs下建立並呼叫DLL--簡單例子

zfmcmm發表於2012-07-15

顯示呼叫dll用例

1.建立dll空專案(win32控制檯專案-應用程式型別 選擇 DLL-附加選項 選空專案,其他預設),新增原始檔mydll.cpp,新增如下程式碼:

extern "C" int _declspec(dllexport) add(int a ,int b)

{

         return a+b;

}

2.編譯執行,debug目錄下產生mydll.dll和mydll.lib(隱式呼叫時用到)檔案,移到要使用mydll.dll到專案目錄debug資料夾下,在應用程式裡新增如下程式碼:

 #include<stdio.h>

#include<windows.h>

Int main()

{

     HINSTANCE Hint =::LoadLibrary("mydll1.dll");       //載入我們剛才生成的dll

     typedef int (*ADD)(int,int);                                          //函式指標型別

     ADD add =(ADD)GetProcAddress(Hint,"add");      //取得dll匯出的add方法

     Printf(“%d\n”,add(3,2));

}

即可

 

隱式呼叫dll用例

1.同顯示呼叫dll  1

2.將mydll.dll檔案移動到應用程式專案debug資料夾下,mydll.lib檔案移動到應用程式專案(非debug)資料夾下。

3.calldll.cpp裡新增如下程式碼:

#include <stdio.h>

#include <windows.h>

#pragma comment(lib, "mydll.lib")

extern "C" _declspec(dllimport) int add(int ,int );

int main()

{

     printf("%d\n",add(3,4));

}

即可

相關文章