Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Посоветуйте ф-ю определиня размера ОЗУ более 2гиг


Layner ©   (2008-01-17 09:21:00) 

нигде не могу найти, ни в пакетах (AllLib например) ни по одиночке...


homm   (2008-01-22 21:20:00) [1]

> [13] Дмитрий Белькевич ©   (20.01.08 19:38)
> >А на XP нет возможности поставить более 2х
>
> В XP SP2 есть ключ в boot.ini, можно до трёх

Ты не понимаешь о чем ты говоришь.


Pavia   (2008-01-22 19:24:00) [2]

Можно на XP поставить. Только ОС должна быть 64 битная. И для XP нужен патч.


Дмитрий Белькевич   (2008-01-20 19:38:00) [3]

>А на XP нет возможности поставить более 2х

В XP SP2 есть ключ в boot.ini, можно до трёх


han_malign   (2008-01-18 12:48:00) [4]


> поставь 4 гига и посмотри под хр

XP(SP2) поддерживает 64-битную GlobalMemoryStatus Ex. Насколько корректно не знаю - проверить не на чем...


KilkennyCat   (2008-01-17 19:41:00) [5]


> Layner ©   (17.01.08 13:38) [10]
>
> KilkennyCat ©   (17.01.08 13:10)
> У меня на 2003


я не говорил 2003...


Layner   (2008-01-17 13:38:00) [6]

KilkennyCat ©   (17.01.08 13:10)
У меня на 2003 винде 4 гига, все кажет, и отлично. А на XP нет возможности поставить более 2х :(
А что, почему в XP не кажет более 2х этот код? У меня сейчас гиг, полет нормальный.. Можно поподробнее?


KilkennyCat   (2008-01-17 13:10:00) [7]


> Все кажет на ура, то что надо!


поставь 4 гига и посмотри под хр


Layner   (2008-01-17 11:22:00) [8]

han_malign ©   (17.01.08 10:33)
Дружище, спасибо! Все кажет на ура, то что надо! Напиши на email, как нибудь по нормальному отблагодарю, очень выручил!


Сергей М.   (2008-01-17 10:49:00) [9]


> еще надо посмотреть кол-во свободной/занятой памяти


А вот этим уже заведует ОС, в БИОСе нет и не может быть такой инф-ции


Layner   (2008-01-17 10:42:00) [10]

Сейчас оттестим :)))


han_malign   (2008-01-17 10:33:00) [11]

а GlobalMemoryStatusEx не работает?

type
 TMemoryStatusEx = packed record
    dwLength               : DWORD;
    dwMemoryLoad           : DWORD;
    ullTotalPhys           : LONGLONG;
    ullAvailPhys           : LONGLONG;
    ullTotalPageFile       : LONGLONG;
    ullAvailPageFile       : LONGLONG;
    ullTotalVirtual        : LONGLONG;
    ullAvailVirtual        : LONGLONG;
    ullAvailExtendedVirtual: LONGLONG;
 end;

type PGlobalMemoryStatusExProc = function(var lpBuffer: TMemoryStatusEx): BOOL;stdcall;
function GlobalMemoryStatusEx(var lpBuffer: TMemoryStatusEx): BOOL;
var hLib: THandle;
   _pgmse: PGlobalMemoryStatusExProc;
begin
  hLib:=LoadLibrary('kernel32');
  Result:=hLib<>0;
  if(Result)then begin
     _pgmse:=GetProcAddress(hLib,'GlobalMemoryStatusEx');
     Result:=Assigned(_pgmse)and _pgmse(lpBuffer);
     FreeLibrary(hLib);
  end;
end;

function MemoryStatus: TMemoryStatusEx;
var _mstat: TMemoryStatus;
begin
  fillchar(Result,sizeof(Result),0);
  Result.dwLength:=sizeof(Result);
  if(not GlobalMemoryStatusEx(Result))then begin
     fillchar(_mstat,sizeof(_mstat),0);
     _mstat.dwLength:=sizeof(_mstat);
     GlobalMemoryStatus(_mstat);

     fillchar(Result,sizeof(Result),0);
     Result.dwLength:=sizeof(Result);
     with Result do begin
        dwMemoryLoad           :=_mStat.dwMemoryLoad   ;
        ullTotalPhys           :=_mStat.dwTotalPhys    ;
        ullAvailPhys           :=_mStat.dwAvailPhys    ;
        ullTotalPageFile       :=_mStat.dwTotalPageFile;
        ullAvailPageFile       :=_mStat.dwAvailPageFile;
        ullTotalVirtual        :=_mStat.dwTotalVirtual ;
        ullAvailVirtual        :=_mStat.dwAvailVirtual ;
     end;
  end;
end;


Layner   (2008-01-17 10:15:00) [12]

Сергей, а как из биоса подчерпнуть? Так то еще надо посмотреть кол-во свободной/занятой памяти...


KilkennyCat   (2008-01-17 10:05:00) [13]


> Сергей М. ©   (17.01.08 10:04) [2]


скорее всего. Ибо некоторые ос не видят более чем определенное количество памяти.


Сергей М.   (2008-01-17 10:04:00) [14]

Более правдивой инф-ции об объеме бортовой RAM, нежели инф-ция из BIOSа, вряд ли сыскать)


Layner   (2008-01-17 10:01:00) [15]

Никто ни разу не определял? :(


Наверх

Титульная страница Поиск, карта сайта Написать письмо