CArdinal不兼容类型错误DelphiXE2

时间:2011-11-08 03:06:01

标签: delphi delphi-xe2

我真的不明白这种不相容的类型'错误(Delphi XE2)

function TWaveBase.GetHandle: THandle;
begin
  if HandleNeeded then begin
    if HandleAllocated then
      CloseHandle;
    CreateHandle(False);
  end;
  FHandleNeeded:=False;
  Result:=FHandle;
end;

[...]

property Handle:Cardinal read GetHandle; - >错误在这里

1 个答案:

答案 0 :(得分:3)

THandle是在Delphi XE中基于Cardinal声明的类型。 (由于64位和跨平台,它在XE2中定义为NativeUInt。它是一种新型。

如果您的GetHandle获取者返回THandle,则您的属性也应声明为THandle。改变它,事情应该正常。