zoukankan      html  css  js  c++  java
  • 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.

  • 相关阅读:
    .java中如何实现序列化,有什么意义
    缓存穿透
    缓存击穿
    缓存雪崩
    redis缓存预热
    Docket 的常用命令
    数据库优化方法
    servlet和jsp的区别:
    6原则1法则
    学习IntelliJ IDEA(二)模块
  • 原文地址:https://www.cnblogs.com/shijiaoyun/p/3844425.html
Copyright © 2011-2022 走看看