Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/c/55.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何使用C语言获取Windows进程(正在运行或已终止)的状态?_C_Windows_Process_Triggers_Status - Fatal编程技术网

如何使用C语言获取Windows进程(正在运行或已终止)的状态?

如何使用C语言获取Windows进程(正在运行或已终止)的状态?,c,windows,process,triggers,status,C,Windows,Process,Triggers,Status,我想知道Windows任务管理器上的进程是否已终止? (这意味着我想创建一个类似数据库触发器的函数) 在某个特定进程终止的时刻,我想做一些任务 从前天开始,我在很多方面都很累。但我没有得到正确的适合 先谢谢你 #include "stdio.h" #include "Windows.h" int main() { HANDLE jvminst = GetCurrentProcess(); printf("%d %d \n",jvminst,WaitForSingleObject(jvmins

我想知道Windows任务管理器上的进程是否已终止? (这意味着我想创建一个类似数据库触发器的函数) 在某个特定进程终止的时刻,我想做一些任务

从前天开始,我在很多方面都很累。但我没有得到正确的适合

先谢谢你

#include "stdio.h"
#include "Windows.h"

int main()
{
HANDLE jvminst = GetCurrentProcess();

printf("%d %d \n",jvminst,WaitForSingleObject(jvminst,0));

return 0;   
}

获取流程的
句柄并使用。

感谢@icktoofay的快速回复。我试试看,然后告诉你。我对这一点很陌生,甚至我不知道什么是句柄。@Aspen:
HANDLE
是一种Windows类型,可以引用多种内容,包括进程。有几种方法可以获得流程的
句柄
,包括现有流程和启动新流程时的句柄。我使用您的提示编写了上述代码。但是我想使用进程名,然后获取该进程的状态我找到了解决方案。。非常感谢您帮助我@icktoofay我使用ShellExecuteEx和WaitForSignalc完成了这项工作您能展示您的尝试吗?也许它只是需要一个我们可以帮助的小补丁。请用代码编辑您的问题,不要将其添加到评论中-这样新读者可以立即看到信息,而不必筛选评论。等待当前流程退出是毫无意义的。您需要确定要监视的特定流程,并打开该流程的句柄。您对目标流程了解多少?进程ID或可执行文件的名称,也许?@Jesse感谢您提到way@HarryJohnston我知道进程名。我想知道进程是否已终止