首先创建C++的DLL:
在VS2005中创建C++的MFC DLL;名字就取为DelphiDLL,然后打开DelphiDLL.cpp文件,在默认生成代码的后面加上如下函数代码:
extern "C" _declspec(dllexport) int maxs(int x,int y) { return x-y; } extern "C" _declspec(dllexport) void mes() { MessageBoxA(NULL,"Fuck!","You",MB_OK); }
然后生成DLL。
然后创建Delphi VCL窗体程序,调用此DLL。
首先将生成好的DLL复制到Delphi工程目录下面,在
var Form1: TForm1; 上面添加代码: function maxs(x,y:integer):integer;cdecl; procedure mes;cdecl;
再在 implementation {$R *.dfm} 下面添加代码: function maxs;external 'DelphiDLL.dll' name 'maxs'; procedure mes;external 'DelphiDLL.dll' name 'mes';
然后调用即可:
procedure TForm1.Button2Click(Sender: TObject); begin showmessage(inttostr(maxs(1,2))); end; procedure TForm1.Button3Click(Sender: TObject); begin mes; end;