Prędkość/zużycie procesora

0

W jaki sposób otrzymać procentowe zużycie procesora ? Chodzi oczywiście do Delphi :)

0

Polecam gotowy komponent wraz z przykładami oraz źródlem:
http://www.torry.net/samples/samples/hard/adcpuusage.zip
tylko w pliku dpr przykładowych projektów musisz usunąć w
ogóle lub zmienić na poprawną ściezkę do adCpuUsage.pas

0

Mam problem z zainstalowaniem. Wrzucam do Lib biorę ładuję *.pas i jak zawsze wyskakiwał komunikat że komponent zainstalowano, tym razem nie wyskoczył i na żadnej zakładce się nie pokazał.

Pomocy !

0
4pr napisał(a)

Mam problem z zainstalowaniem. Wrzucam do Lib biorę ładuję *.pas i jak zawsze wyskakiwał komunikat że komponent zainstalowano, tym razem nie wyskoczył i na żadnej zakładce się nie pokazał.

Pomocy !

Żle się wyraziłem, to nie jest komponent tylko mod€ł do użycia w swoim projekcie w sekcji uses
Cytat z początku pliku adCpuUsage.pas wyjaśnia wszystko, dołączasz go do swojego projektu.

USAGE:

  1. Include this unit into project.

  2. Call GetCPUCount to obtain the numbr of processors in the system

  3. Each time you need to know the value of CPU usage call the CollectCPUData
    to refresh the CPU usage information. Then call the GetCPUUsage to obtain
    the CPU usage for given processor. Note that succesive calls of GetCPUUsage
    without calling CollectCPUData will return the same CPU usage value.

Example:

procedure TTestForm.TimerTimer(Sender: TObject);
var i: Integer;
begin
CollectCPUData; // Get the data for all processors

for i:=0 to GetCPUCount-1 do // Show data for each processor
    MInfo.Lines[i]:=Format('CPU #%d - %5.2f%%',[i,GetCPUUsage(i)*100]);

end;

0

Czyli muszę wrzucić te pliki do katalogu gdzie mam swój program, zamieścić przykładowy kod deklarując w USES i będzie działa (pytam tak bo nie mam dojścia do kompilatora)

0

Dokładnie tak, powinno działać. Dla pewności możesz wypakować przykładowy projekt - na przykład
z katalogu D3 [dla Delphi 3, ale działa pod 7 i nowszymi też powinien] i do katalogu skopiować plik
adCpuUsage.pas, a następnie w pliku projektu (CpuUsageDemo.dpr} zmienić ścieżkę do pliku pas z
"adCpuUsage in '\Projects\CPUusage\adCpuUsage.pas';" na "adCpuUsage in 'adCpuUsage.pas';".
Wcześniej powinieneś też usunąć atrybut "Tylko-do-odczytu" dla pliku projektu CpuUsageDemo.dpr.

0

Sorki za odkopanie tematu ale zauważyłem jak strasznie program się tnie przy tej procedurze. Dlaczego i jak tego uniknąć ?

0

Nie bardzo wiem dlaczego, może dodanie do Timera Application.ProcessMessagess; coś pomoże.
Ja się nie spotkałem z żadnym zacinaniem, ale nie użyałem tego komponentu przez dłuższy czas.

0

mwahaha, chcesz w timerze (obsługiwanym przez kolejkę komunikatów) umieszczać odbieranie i obsługę tychże komunikatów? powodzenia.

0

Teraz też stwierdzam, że to bez sensu, ale nie wiem co może pomóc, może zaproponuj jakieś rozwiązanie.

1 użytkowników online, w tym zalogowanych: 0, gości: 1