ich diesen einfachen Code immer (von #278071) CPU-Auslastung zu erhalten:Kann die CPU-Auslastung in C# erhält Performance mit - System.FormatException
var cpuCounter = new PerformanceCounter("Processor", "% Processor Time", "_Total");
public string getCurrentCpuUsage() {
return cpuCounter.NextValue()+"%";
}
Es funktioniert perfekt seit Jahren. Aber es funktioniert nicht nach dem Upgrade. Ich verwende Windows 10 jetzt und cpuCounter.NextValue wirft System.FormatException: Eingabezeichenfolge war nicht in einem korrekten Format.
Was ist los? Liegt es an Windows 10? Oder ist es wegen meiner neuen CPU - Xeon E5-2683? Wie kann ich die CPU-Auslastung erhalten?
upd: System.FormatException wird ausgelöst, wenn ich .NET Framework 3.5 verwende. Ich wechselte zu .NET Framework 4.5 und jetzt wirft es InvalidOperationException: Counter Name Daten können nicht geladen werden, weil ein ungültiger Index '' aus der Registrierung gelesen wurde.
Ist es 'cpuCounter.NextValue()', das den Fehler oder 'cpuCounter.NextValue() +"% "'? – crashmstr
cpuCounter.NextValue(); cpuCounter.NextSample() löst auch eine Exception aus. – Cluster
Funktioniert auf meiner Win10-Maschine, so ist es wahrscheinlich nicht. Der Code scheint in Ordnung zu sein. –