|
|
Регистрация | << Правила форума >> | FAQ | Пользователи | Календарь | Поиск | Сообщения за сегодня | Все разделы прочитаны |
|
Опции темы | Поиск в этой теме | Опции просмотра |
#1
|
|||
|
|||
Метод GlobalMemoryStatus
Доброго времени суток!
Помогите разобратся система вин Хр СП3 ОЗУ 3 гб В проге через GlobalMemoryStatus непоказывает что в системе 3 гб оперативки, а показиват тока 2 гб и то глючит. Раньше когда в системе было 2 гб все работало прекрасно. Почему так? |
#2
|
||||
|
||||
потому что:
Цитата:
Пишу программы за еду. __________________ |
#3
|
||||
|
||||
Код:
unit Unit1; interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls; type PMEMORYSTATUSEX = ^MEMORYSTATUSEX; MEMORYSTATUSEX = record dwLength: DWORD; dwMemoryLoad: DWORD; ullTotalPhys: Int64; ullAvailPhys: Int64; ullTotalPageFile: Int64; ullAvailPageFile: Int64; ullTotalVirtual: Int64; ullAvailVirtual: Int64; ullAvailExtendedVirtual: Int64; end; TForm1 = class(TForm) Button1: TButton; Memo1: TMemo; procedure Button1Click(Sender: TObject); private { Private declarations } public { Public declarations } end; var Form1: TForm1; function GlobalMemoryStatusEx(lpBuffer: PMEMORYSTATUSEX): Boolean; stdcall; external kernel32; implementation {$R *.dfm} procedure TForm1.Button1Click(Sender: TObject); var MemoryStatus: MEMORYSTATUSEX; begin Memo1.Lines.Clear; MemoryStatus.dwLength := SizeOf(MEMORYSTATUSEX) ; GlobalMemoryStatusEx(@MemoryStatus) ; with MemoryStatus do begin Memo1.Lines.Add(IntToStr(dwLength) + ' Size of ''MemoryStatus'' record') ; Memo1.Lines.Add(IntToStr(dwMemoryLoad) + '% memory in use') ; Memo1.Lines.Add(FloatToStr(ullTotalPhys) + ' Total Physical Memory in bytes') ; Memo1.Lines.Add(IntToStr(ullAvailPhys) + ' Available Physical Memory in bytes') ; Memo1.Lines.Add(IntToStr(ullTotalPageFile) + ' Total Bytes of Paging File') ; Memo1.Lines.Add(IntToStr(ullAvailPageFile) + ' Available bytes in paging file') ; Memo1.Lines.Add(IntToStr(ullTotalVirtual) + ' User Bytes of Address space') ; Memo1.Lines.Add(IntToStr(ullAvailVirtual) + ' Available User bytes of address space') ; end; end; end. Пишу программы за еду. __________________ |
#4
|
|||
|
|||
Большое спасибо помог
|