Forum: Programmieren allgemein
by brechi,
29. Mär 2012
Wie gesagt, ein dynamisches array solltest du nicht verwenden. Un mit dem ganzen post lesen war folgendes gemeint:
bmInfo.bmiHeader.biSizeImage := tempBitmap.bmiHeader.biWidth * tempBitmap.bmiHeader.biHeight * tempBitmap.bmiHeader.biBitCount div 8;
ich hatte mich mit SizeImage und BitCount vertan (ist in meinem Bsp. aber richtig) -> du setzt biSizeImage nicht
Forum: Programmieren allgemein
by brechi,
29. Mär 2012
Ähm du solltest keine Dyn. Arrays als Output einer Funktion verwenden, da u.a. z.b. noch die Laenge gespeichert wird. (Genau müsste ich da jetzt auch erstmal nachschauen)
Du kannst eher sowas nehmen:
type
TMyPixels = array of Cardinal;
PMyPixels = ^TMyPixels;
var
Pixels: PPixels;
CreateDIBSection(....,Pixels,....);
Pixels...
Forum: Programmieren allgemein
by brechi,
28. Mär 2012
var
tempBitmap: BITMAPINFO;
pvBits: Pointer;
mDC: THandle;
mainBitmap: Thandle;
x, y: integer;
q: ^TRGBTriple;
idx: integer;
begin
ZeroMemory(@tempBitmap, sizeof(BITMAPINFO));