Welche
Exception tritt denn nun auf -
AV, Bereichsprüfung oder beides? Bei der Bereichsprüfung darfst du dich nicht wundern, wenn du mit einem "array[0..0]" arbeitest, am Besten also ausschalten oder - was wohl sauberer wäre - einen PColor32-Zeiger per @bmp.Bits[0] holen und dann inkrementieren.
Und wie gesagt, in der Doku fehlt die Dereferenzierung ebenfalls:
Delphi-Quellcode:
var
P: PColor32Array;
begin
P := Bitmap32.Bits;
for I := 0 to Bitmap32.Width * Bitmap32.Height - 1 do
P[I] := Gray32(Random(255)); // fill with a random grayscale noise
end;
Das sollte aber alles nicht zur
AV führen. Außer dem bereits erwähnten ZeroMemory fällt mir in dem Zusammenhang nur noch eines auf: Dein DataArray ist um ein Item zu kurz.