Показать сообщение отдельно
  #1  
Старый 26.06.2016, 23:22
Anael2015 Anael2015 вне форума
Прохожий
 
Регистрация: 26.06.2016
Сообщения: 1
Версия Delphi: Delphi 7
Репутация: 10
По умолчанию Узнать размер операционной памяти

Помогите!!! Нужно сделать программу, которая определяет размер ОЗУ. Программа на Delphi Код написал по примеру, но не могу понять, что не так. Выбивает ошибку.

Код:
unit Unit1;

interface

uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls;

type
TForm1 = class(TForm)
Button1: TButton;
procedure Button1Click(Sender: TObject);
private
function GetMemoryTotalPhys: dword;
{ Private declarations }
public
{ Public declarations }
end;

var
Form1: TForm1;

implementation

{$R *.dfm}

procedure TForm1.Button1Click(Sender: TObject);
begin
memoryMB:=GetMemoryTotalPhys;
memoryMB:=((memoryMB div 1024)div 1024);
showmessage('RAM: '+ inttostr(memoryMB)+ ' MB');
end;

function TForm1.GetMemoryTotalPhys: dword;
var
recMemoryStatus: TMemoryStatus;
begin
// sets record size
recMemoryStatus.dwLength := SizeOf(TMemoryStatus);

// retrieves global memory status (WinAPI)
GlobalMemoryStatus(recMemoryStatus);

// sets result with total amount of memory
result := recMemoryStatus.dwTotalPhys;
end;

end.
Ответить с цитированием