有人请提供用于在 Windows 窗体的进度条上显示当前 CPU 利用率的代码。我已尝试使用此站点上的解决方案,但遇到了很多错误。不知道代码有什么问题,因为我是 C# 的新手。我将从那里开始我的其余编程,因为我想在那之后重新启动一个特定的 Windows 进程。
多谢
我试过的帖子:
如何在 C# 中获取 CPU 使用率? 需要 C# 代码以在 Windows 窗体应用程序的进度栏中显示 CPU 利用率>progress-bar-of-windows-form-ap
我研究了 PerformanceCounter 和 System.Diagnostics,但我无法正确编码它们。
对不起,我的 C# 知识只有 0.1%。
==================================================== ==============================
我的代码:
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using System.Diagnostics;
namespace CPU_Utilization_Monitor
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
int totalHits = 0;
public object getCPUCOunter()
{
PerformanceCounter cpuCounter = new PerformanceCounter();
cpuCounter.CategoryName = "Processor";
cpuCounter.CounterName = "% Processor Time";
cpuCounter.InstanceName = "_Total";
// will always start at 0
dynamic firstValue = cpuCounter.NextValue();
System.Threading.Thread.Sleep(1000);
// now matches task manager reading
dynamic secondValue = cpuCounter.NextValue();
return secondValue;
}
private void Timer1_Tick(System.Object sender, System.EventArgs e)
{
int cpuPercent = (int)getCPUCOunter();
if (cpuPercent >= 90)
{
totalHits = totalHits + 1;
if (totalHits == 60)
MessageBox.Show("ALERT 90% usage for 1 minute");
totalHits = 0;
}
else
{
totalHits = 0;
}
label1.Text = cpuPercent + " % CPU";
label3.Text = totalHits + " seconds over 20% usage";
}
}
}
现在我得到的是:
错误 1 程序“C:\Users\SnowFlake\Documents\Visual Studio 2010\Projects\CPU Utilization Monitor\CPU Utilization Monitor\obj\x86\Debug\CPU Utilization Monitor.exe”不包含适用于入口点 CPU 利用率监视器 <