杀掉winword进程超过两分钟

时间:2015-02-23 13:18:49

标签: c# windows-services

我的一个服务流程是使用Microsoft interop dll启动winword进程并创建一个文档。由于某些未知问题,该进程不会退出(很少发生),因为所有winword进程在实例化之后都会被卡住。

我想要一个服务实用程序,它将检查运行超过2分钟的任何winword进程并终止该进程。这样连续的create语句就像往常一样运行。我会在Windows服务中这样做。 (C#)

1 个答案:

答案 0 :(得分:1)

我同意评论者说杀死Word不是最优雅的解决方案,但如果你没有其他选择,那么这就是你如何杀死已经运行超过2分钟的给定名称的进程。

// I tested with notepad so you would switch this with the Microsoft Word exe name.
string processName = "notepad";
Process[] processes = Process.GetProcessesByName(processName);

foreach (Process process in processes)
{
    TimeSpan runningTime = DateTime.Now - process.StartTime;
    if (runningTime.TotalMinutes > 2)
        process.Kill();
}