在qt中终止进程。 WaitForSingleObject永远不会成功

时间:2014-12-02 16:12:14

标签: c++ qt winapi process

我正在使用QT进行开发。我正在使用QProcess::startDetached来启动流程。在某些时候我需要终止它。据我所知,我需要特定于平台的代码。我不熟悉Windows编程,但我发现我需要使用TerminateProcess来终止进程。我发现的例子如下:

if(WaitForSingleObject(processHandle, INFINITE) == WAIT_OBJECT_0)
{
     TerminateProcess(processHandle, 0);
}

在我的情况下,WaitForSingleObject永远不会结束。如果我使用了一些超时,则此函数在超时后返回并返回失败结果。我不是100%肯定WaitForSingleObject如何运作,如果有人解释,我将不胜感激。最重要的是,我有兴趣知道为什么它不适用于QT应用程序。

我试图终止一个单独的进程以及主进程本身,即在main中调用此函数。

0 个答案:

没有答案