查找在任务管理器中运行的进程并终止进程

时间:2010-01-05 06:02:22

标签: compact-framework frameworks

我有一个Windows移动应用程序 我注意到它在退出时正确终止,它们只是最小化并占用内存。我需要知道是否在taskmanager中运行了同一个应用程序的任何实例。如果存在,我需要终止该进程。

我需要编写一个小应用程序,它将遍历所有打开的应用程序进程并终止所需的应用程序进程。 这样的应用程序是否存在?如果没有,我可以使用哪一个来编写我自己的应用程序?

2 个答案:

答案 0 :(得分:1)

通常,这不是您解决此问题的方法。

您应该在应用程序中保留一个“互斥锁”,当它再次启动时,您首先检查此互斥锁,如果已经启用,则表示您的应用程序已在运行。

找到一个合适的全局互斥锁,然后检查它(我不确定你可以在任何版本的Windows Mobile上使用哪种类型,但是一个简单的搜索应该可以帮助你找到答案)。< / p>

答案 1 :(得分:1)

  1. 如果您的应用在角落显示[X]是最小化按钮。更改窗体的MinimizeButton属性,它将成为一个[ok]按钮,将关闭它。
  2. Windows Mobile下的CF已经强制执行应用程序单例行为。如果应用程序已在运行,CF将查找,找到它,并为您提供优势。无需额外的工作。
  3. 如果你真的想找到这个过程并终止它,那就是使用toolhelp API集完成的。您可以P / Invoke它或使用智能设备框架中的类。