如何从应用程序发送信息到DLL

时间:2016-07-20 10:58:44

标签: delphi

我想学习如何在Delphi中使用插件应用程序。我知道如何从应用程序中的插件发送信息,但我不知道如何从应用程序发送信息到DLL。有人可以帮助我,告诉他们怎么做?

我目前的代码: 的 DLL:

library Plugin;
uses Windows;

procedure SomeText(var S: WideString); stdcall;
begin
S := 'Some text abc';
end;

exports
SomeText;

EXE:

type
TSomeText = procedure(var S: WideString); stdcall;

var
SomeText: TSomeText;


procedure TForm1.Button1Click(Sender: TObject);
var
DLL : THandle;
begin
DLL := LoadLibrary('plugin.dll');
try
@SomeText := GetProcAddress(DLL, 'SomeText');
if @SomeText=nil then raise Exception.Create('Error');
SomeText(S);
Edit1.Text := S;
finally
FreeLibrary(DLL);
end;
end;

此代码正常运行。文本“Some text”显示在表单的edit1中。但是如何以另一种方式做到这一点? edit1中的文本显示在插件形式的edit1上。我想问一个如何做的例子。 感谢您的帮助,对不起我的英语。

0 个答案:

没有答案