есть пример библиотеки, нормально компилируется для Win32, но не смог его же скомпилировать для Win64.
не могу понять как исправить, если есть у кого время и возможность помогите.
Модератор: Модераторы
есть пример библиотеки, нормально компилируется для Win32, но не смог его же скомпилировать для Win64.
не могу понять как исправить, если есть у кого время и возможность помогите.
program project1;
{$mode delphi}
uses SysUtils;
type
PSingle = ^Single;
PSingleArray = ^SingleArray;
SingleArray = array[0..65535] of Single;
const
VAR_NONE = 0;
VAR_FLOAT = 1;
VAR_ARRAY = 2;
VAR_STRING = 3;
VAR_DISP = 4;
type
_AmiVar = Int64;
PAmiVar = ^AmiVar;
AmiVar = record
case _type: Integer of
VAR_FLOAT: (val: Single);
VAR_ARRAY: (_array: PSingleArray);
VAR_STRING: (_string: PChar);
VAR_DISP: (disp: Pointer);
end;
function test: _AmiVar;
begin
{Result := AllocArrayResult(); }
AmiVar(result)._array^[0] := 0; // <-- Error: Illegal type conversion: "Int64" to "AmiVar"
end;
begin
writeln('ok');
end.
AmiVar = record
case Integer of
VAR_FLOAT: (val: Single);
VAR_ARRAY: (_array: PSingleArray);
VAR_STRING: (_string: PChar);
VAR_DISP: (disp: Pointer);
end;
function test: _AmiVar;
begin
{Result := AllocArrayResult(); }
PAmiVar(@result)^._array^[0] := 0; // <-- Error: Illegal type conversion: "Int64" to "AmiVar"
end;
Вернуться в Free Pascal Compiler
Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 1