Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

christianhess

Status do sistema

Recommended Posts

Tente assim:

 

const ID_BIT=$200000; // EFLAGS ID bit  function GetCPUSpeed: Double;constDelayTime = 500;var TimerHi, TimerLo: DWORD; PriorityClass, Priority: Integer; begin try PriorityClass := GetPriorityClass(GetCurrentProcess); Priority := GetThreadPriority(GetCurrentThread);  SetPriorityClass(GetCurrentProcess, REALTIME_PRIORITY_CLASS); SetThreadPriority(GetCurrentThread,THREAD_PRIORITY_TIME_CRITICAL);  Sleep(10); asm dw 310Fh // rdtsc mov TimerLo, eax mov TimerHi, edx end; Sleep(DelayTime); asm dw 310Fh // rdtsc sub eax, TimerLo sbb edx, TimerHi mov TimerLo, eax mov TimerHi, edx end; procedure TForm1.Button1Click(Sender: TObject);var MemoryStatus: TMemoryStatus;begin   MemoryStatus.dwLength:= sizeof(MemoryStatus);   GlobalMemoryStatus(MemoryStatus);   Label1.Caption := 'Memória física - Total (KB): ' + IntToStr(MemoryStatus.dwTotalPhys div 1024);   Label2.Caption := 'Memória física - Livre (KB): ' + IntToStr(MemoryStatus.dwAvailPhys div 1024);   Label3.Caption := 'HD - Tamanho (KB): ' + IntToStr(DiskSize(4) div 1024);   Label4.Caption := 'HD - Livre (KB): ' + IntToStr(DiskFree(4) div 1024);   Label5.Caption := Format('%f MHz', [GetCPUSpeed]);end;

 

Obs:

DiskFree(3) = "C:\"

DiskFree(4) = "D:\"

...

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.