0

我如何制作一个程序,当打开所述程序/进程而不启动所述程序本身时,该程序将激活代码。

现在我有这个代码:

while (!IsProcessOpen("ThisProcess")) //"IsProcessOpen" just checks whether the program stated is open in the task manager.
{

}
gopatch.DoWork += new DoWorkEventHandler(gopatch_DoWork);
gopatch.RunWorkerCompleted += new RunWorkerCompletedEventHandler(gopatch_RunWorkerCompleted);
gopatch.RunWorkerAsync();

但是这种方式使用了太多的cpu。有没有办法让它使用更少的 cpu,但可以按照我的意愿完成工作?

4

1 回答 1

1

您可以Thread.Sleep在 while 循环中使用该方法来防止过多的 CPU 消耗。这不是最佳的,但很简单。如果您需要更好的东西,请尝试使用事件。本页介绍了如何使用ManagementEventWatcher来执行此操作。

于 2013-06-21T02:25:03.280 回答