Dll 使用 PChar 参数的小例子


本文整理自网络,侵删。

 Dll 文件:
--------------------------------------------------------------------------------

library Lib;

uses
SysUtils, Classes;

{$R *.res}

procedure Test(p: PChar);
const
Title = 'Title ';
var
str: string;
begin
str := p;
StrCopy(p, Title);
StrCat(p, PChar(str));
end;

exports Test;

begin
end.
--------------------------------------------------------------------------------
调用的代码文件:
--------------------------------------------------------------------------------

unit Unit1;

interface

uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls;

type
TForm1 = class(TForm)
Button1: TButton;
procedure Button1Click(Sender: TObject);
end;

var
Form1: TForm1;

implementation

{$R *.dfm}

procedure Test(p: PChar); external 'Lib.dll';

var num: Integer;

procedure TForm1.Button1Click(Sender: TObject);
var
p: PChar;
begin
Inc(num);
p := StrAlloc(255);
StrCopy(p, PChar(IntToStr(num)));
Test(p);
Text := p;
StrDispose(p);
end;

end.

相关阅读 >>

解决 Delphi 程序在不同操作系统中 shellexecute 调用 chrome.exe 偶尔无效的问题

Delphi 让嵌入窗体的 webbrowser 控件无边框

Delphi twebbrowser也能响应回车键

Delphi中组件label、edit、tag、memo、richedit

Delphi scrollbox1滚动框鼠标滚轮

Delphi使用api实现模拟按键

Delphi 获取系统串口列表

Delphi fdmemtable1 清空

Delphi文件无法拖拽功能失效

Delphi 如何得到 winrar 处理解压缩文件的返回值 ?

更多相关阅读请进入《Delphi》频道 >>



打赏

取消

感谢您的支持,我会继续努力的!

扫码支持
扫码打赏,您说多少就多少

打开支付宝扫一扫,即可进行扫码打赏哦

分享从这里开始,精彩与您同在

评论

管理员已关闭评论功能...