testsharemem.dpr

来自「Sharemem replacement for Delphi. Fast, 」· DPR 代码 · 共 59 行

DPR
59
字号
program TestShareMem;

{$APPTYPE CONSOLE}

uses
  ShareMemRep,
  Windows;

function GetStringFromDLL1(S : String) : String;
  external 'TestDll1.dll' name 'GetStringFromDLL';

function GetStringFromDLL2(S : String) : String;
  external 'TestDll2.dll' name 'GetStringFromDLL';

function GetStringFromDLL3(S : String) : String;
  external 'TestDll3.dll' name 'GetStringFromDLL';

var
  S : String = 'Hehe, It''s very COOL...';
  DynGetStringFromDLL : function (S : String) : String;

procedure DynamicLoadTest(LibName : String);
var
  Str : String;
  HLib : HModule;
begin
  HLib := LoadLibrary(PChar(LibName));
  DynGetStringFromDLL := GetProcAddress(HLib, 'GetStringFromDLL');
  Str := DynGetStringFromDLL(S);
  Writeln(Str);
//  FreeLibrary(HLib);
end;

procedure OutputString;
var
  Str : String;
begin
  Writeln('---- 1 ----':15);
  Str := GetStringFromDLL1(S);
  Writeln(Str);
  Writeln;

  Writeln('---- 2 ----':15);
  Str := GetStringFromDLL2(S);
  Writeln(Str);
  Writeln;

  Writeln('---- 3 ----':15);
  Str := GetStringFromDLL3(S);
  Writeln(Str);
  Writeln;
end;

begin
  OutputString;
  Writeln('- Dynamic -':15);
  DynamicLoadTest('TestDynDll.dll');
end.

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?