一.创建一个DLL项目
二.把验证过没有问题的函数写到DLL项目中
三.生成DLL
拿到了DLL
四.调用DLL
通常DLL调用的声明语句都会写在 implementation之上或者之下,区别是作用域不同.唯一的要求是:声明语句必须要在调用语句之前!!!
unit Unit1; interface uses Winapi.Windows, Winapi.Messages, System.SysUtils, System.Variants, System.Classes, Vcl.Graphics, Vcl.Controls, Vcl.Forms, Vcl.Dialogs, Vcl.StdCtrls; type TForm1 = class(TForm) Edit1: TEdit; Edit2: TEdit; procedure Edit1Change(Sender: TObject); private { Private declarations } {调用DLL的声明不可以写在窗体类内} public { Public declarations } {调用DLL的声明不可以写在窗体类内} end; {调用DLL的声明必声明在调用位置之前} var Form1: TForm1; implementation function ChnToPY(Value: AnsiString): AnsiString; stdcall; external '首字母.dll'; //调用声明,DLL与程序在同一目录 {function ChnToPY(Value: AnsiString): AnsiString; stdcall; external 'B\首字母.dll';} //调用声明,DLL在与程序同级的B文件夹下 {function ChnToPY(Value: AnsiString): AnsiString; stdcall; external '..\B\首字母.dll';} //调用声明,DLL在程序上一级文件夹的B文件夹下 {$R *.dfm} procedure TForm1.Edit1Change(Sender: TObject); begin Edit2.Text := ChnToPY(Edit1.Text); //调用DLL函数 end; end.
标签:调用,AnsiString,ChnToPY,DELPHI,Vcl,DLL,声明 From: https://www.cnblogs.com/yoooos/p/18113697