Ich nehme mal an das ich die CPU Auslastung aus folgendem Code ausrechnen kann oder?
Delphi-Quellcode:
function PrintCPUTime(Process: TProcess): WideString;
var
KernelTime64 : LARGE_INTEGER; //TFileTime;
UserTime64 : LARGE_INTEGER;
CPUTime64 : LARGE_INTEGER;
CPUTimeft : TFileTime;
st : TSystemTime;
TimeStr : array[0..254] of WideChar;
Kernel, User : Cardinal;
dwTime : DWORD;
begin
KernelTime64.LowPart := Process.KernelTime.dwLowDateTime;
KernelTime64.HighPart := Process.KernelTime.dwHighDateTime;
UserTime64.LowPart := Process.UserTime.dwLowDateTime;
UserTime64.HighPart := Process.UserTime.dwHighDateTime;
CPUTime64.QuadPart := KernelTime64.QuadPart + UserTime64.QuadPart;
CPUTimeft.dwLowDateTime := CPUTime64.LowPart;
CPUTimeft.dwHighDateTime := CPUTime64.HighPart;
FileTimeToSystemTime(CPUTimeft, st);
GetTimeFormatW(LOCALE_SYSTEM_DEFAULT, TIME_FORCE24HOURFORMAT, @st, nil, TimeStr, SizeOf(TimeStr));
Result := WideString(TimeStr);
end;
Ich habe mit den Werten von KernelTime64, UserTime64, CPUTime64 und CPUTimeft schon etwas rumprobiert. Da ich mich allerdings damit nicht auskenne, habe ich es bisher noch nicht rausbekommen.
Könntest du mir vielleicht einen Denkanstoß geben?
Beste Grüße
Nakaron