Avatar billede lsc Nybegynder
26. januar 2006 - 12:53 Der er 6 kommentarer og
1 løsning

Hvor hurtig er CPU'en ?

Er der nogle der ved hvordan man tester hastigheden på CPU'en i Delphi.

Findes der en api-kald, eller skal man tælle en variabel op i fx. et sekund eller hvad ?

Hvad er den "rigtige" løsning ?
Avatar billede snowball Novice
26. januar 2006 - 13:04 #1
http://www.swissdelphicenter.com/en/showcode.php?id=994

uses
  Registry;

function GetCpuSpeed: string;
var
  Reg: TRegistry;
begin
  Reg := TRegistry.Create;
  try
    Reg.RootKey := HKEY_LOCAL_MACHINE;
    if Reg.OpenKey('Hardware\Description\System\CentralProcessor\0', False) then
    begin
      Result := IntToStr(Reg.ReadInteger('~MHz')) + ' MHz';
      Reg.CloseKey;
    end;
  finally
    Reg.Free;
  end;
end;

Så henter du den værdi som Windows nævner under "System Properties".
Avatar billede nca Juniormester
26. januar 2006 - 13:08 #3
Jeg bruger et sæt komponenter til at lave WMI kald med. Her kan ud aflæse stort set alt om computeren.
Prøv at test nedenstående VB script.

strComputer = "."
Set objWMIService = GetObject(_
    "winmgmts:\\" & strComputer & "\root\cimv2")
Set colItems = objWMIService.ExecQuery(_
    "Select * from Win32_Processor")
For Each objItem in colItems
    Wscript.Echo "Processor Id: " & objItem.ProcessorId
    Wscript.Echo "Maximum Clock Speed: " _
        & objItem.MaxClockSpeed
Next

Kopier teksten ind i et tomt tekstdokument (Notepad).
Gem filen som Test.vbs
Dobbeltklik på filen og se resultatet.

Det samme kan laves i Delphi, men jeg ved ikke hvordan man kalder WMI uden at ha' komponenter.
Avatar billede lsc Nybegynder
26. januar 2006 - 13:35 #4
Jeg takker mange gange for jeres svar. Og så så hurtigt. Snowballs funktion virker jo bare...
Jeg har ikke meget tjek på Registry-biblioteket, men det ser ud som om at det er værd at dyrke lidt mere.

Lidt underligt med den tilde i '~MHz', det må være mere windos end Delphi, men sådan er der jo så meget.

Takker endnu en gang.

Lsc
Avatar billede snowball Novice
26. januar 2006 - 15:43 #5
Husk venligst at accpetere svaret så spørgmålet bliver lukket :)

Mht. WMI fra Delphi, så har jeg tidligere brugt komponenterne fra http://www.online-admin.com/wmiset.html og de virker ganske udmærket.
Avatar billede nca Juniormester
26. januar 2006 - 16:04 #6
Det er også dem jeg bruger. Jeg er meget tilfreds med dem og firmaets service er OK.
Avatar billede lsc Nybegynder
26. januar 2006 - 16:18 #7
Jamen, jeg accepetere skam svaret og håber at jeg rammer rigtigt denne gang.
Lsc
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester