首先创建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;