0

基本的なエラーを修正するときに、GraphicEx コンポーネント ライブラリ (PNG ファイル用) を Delphi 2006 から XE3 (最終的に入手) に移植しようとしていますが、このエラーでスタックしました:

"TPNGGraphic.IsChunk" invalid type cast

行で:

function TPNGGraphic.IsChunk(ChunkType: TChunkType): Boolean;

// determines, independant of the cruxial 5ths bits in each "letter", whether the
// current chunk type in the header is the same as the given chunk type

const
  Mask = not $20202020;

begin
  Result := (Cardinal(FHeader.ChunkType) and Mask) = (Cardinal(ChunkType) and Mask); // <-- this line
end;

誰がそれを修正するために何をすべきか知っていますか?

4

1 に答える 1

6

TChunkType は次のように定義されます。

type
  TChunkType = array[0..3] of Char;

TChunkTypeしたがって、コンパイラは型を Cardinal にキャストできません。

定義を変更してみてください

type
  TChunkType = array[0..3] of AnsiChar;
于 2013-03-07T20:14:06.647 に答える