Btw ein einfaches casten auf Boolean hätte ja auch geholfen, denn alles was <> 0 ist, ist true!
Da mußt du immer etwas aufpassen.
crc ist 32 Bit und Boolean nur 8 Bit.
Falls Delphi hier keine Compilermagic versteckt hat, welche das Boolean logisch castet, anstatt es binär zu casten,
dann könnte es eventuell Probleme mit sowas geben, denn
LongBool($FFFFFF00) <> Boolean($FFFFFF00)
.
Aber zum Glück gibt es hier noch das
and 1
, so daß in diesem Fall am Ende die oberen Bytes eh wegfallen.