Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2008.10.26;
Скачать: CL | DM;

Вниз

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

 
Layner ©   (2008-01-17 09:21) [0]

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


 
Layner ©   (2008-01-17 10:01) [1]

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


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

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


 
KilkennyCat ©   (2008-01-17 10:05) [3]


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


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


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

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


 
han_malign ©   (2008-01-17 10:33) [5]

а 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:42) [6]

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


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


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


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


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

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


 
KilkennyCat ©   (2008-01-17 13:10) [9]


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


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


 
Layner ©   (2008-01-17 13:38) [10]

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


 
KilkennyCat ©   (2008-01-17 19:41) [11]


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


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


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


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

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


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

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

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


 
Pavia ©   (2008-01-22 19:24) [14]

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


 
homm ©   (2008-01-22 21:20) [15]

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

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



Страницы: 1 вся ветка

Текущий архив: 2008.10.26;
Скачать: CL | DM;

Наверх




Память: 0.5 MB
Время: 0.014 c
15-1220249423
oldman
2008-09-01 10:10
2008.10.26
Поздравляю с Днем знаний!


4-1186044306
memphis007
2007-08-02 12:45
2008.10.26
Использование WinAPI для взаимодействия с другими приложениями


2-1221833104
Alexei
2008-09-19 18:05
2008.10.26
Запуск приложения


15-1220494565
Slider007
2008-09-04 06:16
2008.10.26
С днем рождения ! 4 сентября 2008 четверг


15-1220428472
clickmaker
2008-09-03 11:54
2008.10.26
Неверный запрос в "Начинающих"