Einzelnen Beitrag anzeigen

EWeiss
(Gast)

n/a Beiträge
 
#20

AW: Dynamisches Array Grenze?

  Alt 29. Mär 2012, 18:08
Zitat:
Und zu guter letzt: Lies dir nochmal meinen 2. Post mit meinem Beispiel KOMPLETT durch, da solltest die Lösung finden.
Habe deinen Thread schon gelesen aber lösungen sind da keine was den Speicher angeht.
Zitat:
Delphi-Quellcode:
type
    TMyPixels = array[0..4096*4096-1] of Cardinal;
    PMyPixels = ^TMyPixels;
 var
   Pixels: PPixels;
 CreateDIBSection(....,Pixels,....);
 Pixels[0]...
Eine alternative aber kein muss Verstehe hier den zusammenhang nicht in verbindung mit dem Speicher.
CreateDibSection gibt die Pixelanzahl selbst zurück also dimensioniert den Speicher im normalfall selbst.
Wenn aber hSection nicht gleich NULL ist benötige ich ein mapping.
Das geht aber über HBitmap nicht.

Zitat:
Delphi-Quellcode:
nSize := bm.bmWidth * bm.bmHeight;
for IntI := 0 to nSize do
fehlt mit Sicherheit ein -1
Ok wo du Recht hast .. hast du recht.

bmInfo.bmiHeader.biBitCount kannst du nicht einfach so festlegen (bzw. selbst berechen) dafür gibt es vorgaben abhängig vom Bitmap
also 1,4,8,16,24 bis Win98 und 1,4,8,16,24,32 Bit ab Win2000

Siehe BitCount

Quelltext ist ja oben..
Wenn zeit hast kannst es ja berichtigen.

Kannst das bitte im Thread Dimmed Sample posten ?
Da es ja jetzt nicht mehr um das Array alleine geht.
Danke.

EDIT:
Es lag wirklich nur an nSize -1

gruss

Geändert von EWeiss (29. Mär 2012 um 22:36 Uhr)
  Mit Zitat antworten Zitat