Delphi dll экспортная запись - PullRequest
       16

Delphi dll экспортная запись

2 голосов
/ 15 сентября 2011

Может кто-нибудь сказать мне, можно ли экспортировать запись из dll? Если да, то как это сделать?

Моя запись выглядит так:

variables = record
      name : string;
      units : string;
      value : double;
end;

Ответы [ 2 ]

7 голосов
/ 15 сентября 2011

Вы не можете экспортировать типы из DLL. Вам нужна единица импорта, в которой вы объявляете тип записи.

0 голосов
/ 15 сентября 2011

Вам лучше использовать строки PAnsiChar () или PWideChar (). Сериализуйте вашу запись в строку, например, примерно так:

procedure MyDLLProc(var RecordAsPString : PChar); 
var
  s : string;
begin
  s := format('%s,%s,%f',[variables.name, variables.units,variables.value]);
  StrPCopy(RecordAsPString,s);
end;
...