在Delphi中調用C語言編寫的DLL

1、 使用Visual C++ 6.0編寫和鏈接DLL

打開Visual C++ 6.0集成開發環境,新建一個Win32 Dynamic-Link Library類型的工程CDLL,在工程中新建一個C語言源文件cdll.c。源文件中的內容如下:

__declspec(dllexport) int max(int x,int y) /* 比較兩個整型變量大小的函數max */

{

       if (x>y)

              return x;

       else

              return y;

}

輸入完畢後按下F7鍵來編譯和鏈接CDLL.dll,之後可以在存放該工程的文件夾的Debug子文件夾中找到一個名爲CDLLDLL文件,該文件即以上的C語言源程序生成的DLL

2、 使用Delphi 7編寫調用該DLL的應用程序

打開Delphi 7集成開發環境,在默認生成的窗體Form1上拖放3Edit控件Edit1Edit2Edit31Button控件Button1,並在Object Inspector中將3Edit控件的Text屬性都清空。然後在默認生成的Unit1.pas文件的implementation後輸入:

function max(x,y: Integer): Integer; stdcall external 'CDLL.DLL';

返回Form1,雙擊Button1控件,在生成的事件處理程序中輸入:

Edit3.Text:=IntToStr(max(StrToInt(Edit1.Text), StrToInt(Edit2.Text)));

輸入完畢後,保存這個Project。最後,將CDLL.dll文件copy到保存該Project的文件夾中。

3、 測試

Delphi集成開發環境下,按下F9來運行剛剛編寫的Project。在Edit1中輸入2Edit2中輸入4,然後單擊Button1,可以看到Edit3中會出現4,測試成功。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章