Einzelnen Beitrag anzeigen

Michaell

Registriert seit: 17. Aug 2015
Ort: Bayern
47 Beiträge
 
Turbo C++
 
#1

Fehler: Für diesen Befehl ist nicht genügend Speicher verfügbar.

  Alt 12. Mär 2018, 10:28
Hallo,

es gibt hier im Forum viele Anfragen zur Fehlermeldung:
Für diesen Befehl ist nicht genügend Speicher verfügbar.
bzw.:
Not enough storage is available to process this command.
Diese sind alle älter als 5 Jahre und ich konnte auch nichts "passendes" dazu finden:

Kürzlich mußte ich meine benötigte Bitmapgröße auf 8832 * 8832 Pixel erweitern. Beim Programmstart kommt nun bei manchen meiner Rechner (Windows 7, 32 Bit und Windows 10, 32 Bit) die obige Fehlermeldung. Der Trigger für die Fehlermeldung ist hier:
Code:
void __fastcall CBitmapImage::Init()
{
   // generate and init bitmap object
   Bitmap = new Graphics::TBitmap();
   Bitmap->Height = Height; // 8832 pixel
   Bitmap->Width = Width; // 8832 pixel
}
Bei der "Width" Zuweisung passiert es. Wenn ich das richtig berechnete habe, so würde ein 27 MiB Speicherblock benötigt. Klingt für mich nicht nach viel ...
noch ein paar Details:
  1. Mein Prog. belegt nach dem Start 265 MiB RAM.
  2. Alle PCs haben 4 GiB RAM und der ist nicht mal zur Hälfte gefüllt (von den ca. 3 GiB die verfügbar sind).
  3. Ich Verwende den C++ Builder 10.2 mit dem klassischen Compiler.
Wie kann ich dieses Problem beheben? Vielen Dank!

Grüße!

Michael
  Mit Zitat antworten Zitat