c++ - 从 Windows 服务启动子进程

标签 c++ windows winapi process child-process

我在 c++ 中有一个 XMLRPC 窗口服务。我需要从它启动子进程,如果 Windows 服务收到请求并且进程已经存在我需要结束那个特定的子进程并再次启动它。我不需要等待进程在启动后退出但是一旦它启动并开始它应该做的事情我需要通知主进程。当子进程结束时,它需要通知启动它的服务,以便我可以维护一个已存在进程的列表。我知道我可以用 CreateProcess 做到这一点但是,一旦子进程到达特定事物,我该如何处理通知的各个方面。

最佳答案

调用 CreateProcess 后,跟踪进程句柄。您可以使用它来查看进程是否有 exited or not , 并调用 TerminateProcess如有必要。

您甚至可以将所有句柄保存在一个数组中,然后一次调用 WaitForMultipleObjects将在任何一个子进程退出后立即通知您。

关于c++ - 从 Windows 服务启动子进程,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18795131/

相关文章:

c++ - 使用 C++ 解析 Wavefront .obj 文件

c++ - 什么时候从列表中弹出的对象被销毁?

c++ - 将自定义控件添加到控制台窗口

windows - 在后台使用plink转发本地端口并在本地计算机上执行命令

node.js - 本地主机为 :3000 gives ERR_INVALID_REDIRECT 的 http 服务器

html - 赢32。 : How to scrape HTML without regular expressions?

c++ - 如何将文件路径和参数的执行路径分开?

c++ - 使用 libavformat 读取位于内存中的文件

c++ - Visual Studio 2015.c++ 编译器错误 C2280 试图引用已删除的函数

C++ Win32 线程