我正在将GraphicEx项目转换为Delphi 2009。
我在单位Scanf_c.pas中转换以下程序时遇到问题。这是问题所在:
With TscRec(FType) do begin
FType是一个整数,定义了TscRec:
TscRec = packed record // Has size of an integer
Case byte of
0: ( Typ : byte; Size : char; Flags : word;);
1: ( SizeType : word; iFlags : smallInt;);
end;
似乎这段代码在delphi 2007中工作正常,但我在Delphi 2009中编译时遇到问题。编译错误是“Invalid Typecase”。问题是因为类型转换FType是整数到TScRec这是一个记录。
这里的某些人是否有与Delphi 2009相同的问题并且有解决方案。
THX
答案 0 :(得分:12)
“char”现在是一个2字节的数据类型。如果您将声明更改为“ansichar”会发生什么? (这相当于Delphi中的“char”< = 2007)。