Einzelnen Beitrag anzeigen

Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
44.184 Beiträge
 
Delphi 12 Athens
 
#9

AW: Nicht genügend Arbeitsspeicher Win XP vs Win 7

  Alt 7. Sep 2010, 09:37
Wenn ihr dieses in euer Programm einbaut, was zeigt denn dieses jeweils im XP/7 an?
Delphi-Quellcode:
var GMS: TMemoryStatusEx;

GMS.dwLength := SizeOf(TMemoryStatusEx);
GlobalMemoryStatusEx(GMS);
Label1.Caltion := Format('%.2n MB verfügbar', [GMS.ullAvailVirtual / 1048576]);

@Luckie: Hab hier garde nur 2 GB im System verfügbar, also was zeigt denn Folgendes an?
Code:
program Project3;

{$APPTYPE CONSOLE}

uses
  Windows;

//{$SetPeFlags IMAGE_FILE_LARGE_ADDRESS_AWARE}

var
  GMS: TMemoryStatusEx;

begin
  GMS.dwLength := SizeOf(TMemoryStatusEx);
  GlobalMemoryStatusEx(GMS);
  WriteLn('used (system):               ', GMS.dwMemoryLoad, ' %');
  WriteLn;
  WriteLn('physical memory - total:     ', GMS.ullTotalPhys     / 1048576 :4:2, ' MB');
  WriteLn(' (system)       - available: ', GMS.ullAvailPhys     / 1048576 :4:2, ' MB');
  WriteLn;
  WriteLn('page file       - total:     ', GMS.ullTotalPageFile / 1048576 :4:2, ' MB');
  WriteLn('                - available: ', GMS.ullAvailPageFile / 1048576 :4:2, ' MB');
  WriteLn;
  WriteLn('virtual memory  - total:     ', GMS.ullTotalVirtual  / 1048576 :4:2, ' MB');
  WriteLn(' (this program) - available: ', GMS.ullAvailVirtual  / 1048576 :4:2, ' MB');
  ReadLn;
end.
PS: Wer mehr als 4 GB in einem Win32-Programm nutzen will, der muß erstmal Large-Address-Aware im System aktiviert haben und sollte sich dann im MSDN mal wie AWE-Funktionen ansehn.

@Mods: Ja, ich hab absichtlich [CODE] verwendet, wehe ihr editiert das ... bitte repariert endlich mal das Delphi-Tag.
$2B or not $2B

Geändert von himitsu ( 7. Sep 2010 um 09:44 Uhr)
  Mit Zitat antworten Zitat