Цитата:
Сообщение от lmikle
Не понятно, что тебе надо. Написать эту функцию или вызвать ее.
Если вызывать, то, видимо, что-то типа такого:
Код:
var
PI : TPosInfo;
begin
PI.Open := 0;
GetMem(PI.SerNo,12+1);
// Получаем адрес функции и т.п.
If GetCfgData(PI) = 0 // 0 = success
Then Result := StrPas(PI.SerNo) // Типа вернули результат
Else Raise Exception.Create('Error');
FreeMem(PI.SerNo,12+1);
|
Интересовало будет ли правильным описывать все вот так.
А так же как далее работать с SerNo. Я так понял через StrPas
И как реализовать min размер 12+1 байт. Размер может быть и больше 12+1.
Код:
TYPE
TPosInfo = record
Open: Byte;
SerNo: PChar;
end;
GetCfgData : function(var Info: TPosInfo): Byte; stdcall;
...
Var
ConfigData: TPosInfo;
...
begin
GetMem ...
Answer:= GetCfgData(ConfigData);
FreeMem ...
...
end.