Delphi中dll的创建和调用
很久没有回来了,流浪了太多的地方,以后还会继续流浪吗?
记性不好,留下点自己的成长,希望能够坚持下去。。。。
诚肯接受批评
记性不好,留下点自己的成长,希望能够坚持下去。。。。
诚肯接受批评
1
{这是DLL}
2
library Project1;
3![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
4
uses
5
SysUtils,
6
Classes,
7
Dialogs;
8![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
9
procedure HelloWorld;
10
begin
11
MessageDlg('厌恶了流浪的味道', mtConfirmation, [mbOK],0);
12
end;
13![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
14
exports
15
HelloWorld;{这里很重要,在exe中调用时要用到,似乎大小写都不能错}
16![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
17
{$R *.res}
18![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
19
begin
20
end.
21
//-----------------------------------------------------------------------------------------
22
{这里是调用DLL的exe}
23
var
Form1 : TForm1;
procedure HelloWorld; external 'Test.dll';{通过过程调用DLL,Test.dll为生成的dll的名字,并且位置和exe文件在一个目录,不在的话,要指定}
24
implementation
25![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
26
{$R *.dfm}
27![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
30
procedure TForm1.FormMouseDown(Sender: TObject; Button: TMouseButton;
31
Shift: TShiftState; X, Y: Integer);
32
begin
33
HelloWorld;{执行dll中的程序代码,这里好像是和dll中exports语句对应的,大小写错了也不行哦}
34
end;
35![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
36
end.
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
2
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
3
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
4
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
5
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
6
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
7
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
8
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
9
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
10
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
11
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
12
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
13
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
14
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
15
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
16
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
17
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
18
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
19
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
20
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
21
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
22
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
23
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
Form1 : TForm1;
procedure HelloWorld; external 'Test.dll';{通过过程调用DLL,Test.dll为生成的dll的名字,并且位置和exe文件在一个目录,不在的话,要指定}
24
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
25
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
26
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
27
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
30
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
31
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
32
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
33
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
34
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
35
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
36
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)