直接上代码:

大家直接调用即可

#include <iostream>
#include <Windows.h>
#include <tlhelp32.h>
#include <string>
#include <vector>using namespace std;vector<DWORD> GetProceeIDfromParentID(DWORD& dwParentProcessId)
{vector<DWORD> parent_id_vec;DWORD dwProcessID = 0;//进行一个进程快照HANDLE hProcessSnap = CreateToolhelp32Snapshot(TH32CS_SNAPPROCESS, 0);if (hProcessSnap == INVALID_HANDLE_VALUE){cout << ("进程快照失败");return parent_id_vec;}PROCESSENTRY32 pe;TCHAR procID[100] = { 0 };pe.dwSize = sizeof(pe);BOOL bProcess = Process32First(hProcessSnap, &pe);//遍历所有进程while (bProcess){if (pe.th32ParentProcessID == dwParentProcessId)//判断如果父id与其pid相等,{dwProcessID = pe.th32ProcessID;parent_id_vec.push_back(dwProcessID);}bProcess = Process32Next(hProcessSnap, &pe);}CloseHandle(hProcessSnap);return parent_id_vec;
}int main()
{DWORD parent_id = 17280;vector<DWORD> child_id_vector = GetProceeIDfromParentID(parent_id);}

windows 根据父进程pid查找所有子进程id(C++)相关推荐

  1. 父进程退出,保证子进程交由init。

    最近写代码遇到父进程fork出的子进程,父进程退出后子进程也退出.而要求的实现机制是,父进程启动子进程后,保证子进程能够继续运行,可以保证另一个进程启动能够和这个子进程进行通讯操作. 规避这个问题的方 ...

  2. VC获取父进程PID

    // tt.cpp : 定义控制台应用程序的入口点. // #include "stdafx.h" #include <windows.h>   #include &l ...

  3. Linux进程全解7——父进程wait / waitip回收子进程

    以下内容源于朱有鹏<物联网大讲堂>的课程学习整理,如有侵权,请告知删除. 一.wait介绍 1.wait的工作原理 (1)子进程结束时,系统向其父进程发送SIGCHILD信号: (2)父进 ...

  4. linux 父子进程结束,Linux下让父进程结束后,子进程自动结束

    在多进程编程的时候,经常会遇到这样的情况.父进程创建了一堆子进程,当遇到错误或者操作失误的时候把父进程关闭了,但是子进程还在跑,不得不一个一个地杀死子进程,或者使用ps,grep,awk,kill来配 ...

  5. Go程序当父进程被kill,子进程也自动退出的问题记录

    平常我们启动一个后台进程,会通过nouhp &的方式启动,这样可以在退出终端会话的时候,进程仍然可以继续在后台执行(进程的父进程id会从原来的bash进程变成1) 在go程序中,通过nouhp ...

  6. C#获得父进程PID编号的完整源源码

    将内容过程中比较重要的一些内容片段做个记录,如下内容段是关于C#获得父进程PID编号的完整源的内容,应该能对大伙有一些用途. using System; using System.Diagnostic ...

  7. 父进程退出后,子进程自动消亡

    今日做项目,通过systemctl去管理服务A.因为A依赖很多动态库,所以实际执行的时候,是由B这个脚本将A带起来.这样,systemctl start A时,实际上是B先运行起来,然后B将A带起来. ...

  8. Linux父进程如何发信号给子进程,在父进程和子进程之间发送信号

    我正试图从parrent进程向子进程发送一个用户定义的(SIGUSR1或SIGUSR2)信号.子进程接收到信号后,会等待5秒钟,并将另一个用户定义的信号发送给parrent进程.当parrent进程接 ...

  9. windows下查看进程PID

    进行一些操作的时候需要知道进程的标识符,大家都知道进程可以在任务管理器中查看,不过我们看不到有PID 标识符.下面简单提供两种查看进程PID的方法: 方法一:设置任务管理器让其显示PID 方法二:使用 ...

最新文章

  1. 10冰点还原安装不了_荣耀智慧屏X1性能有多强?荣耀智慧屏X1怎么安装第三方软件?...
  2. 从C#中的枚举获取int值
  3. 4测试命令_科普 | 最全的Filecoin测试网挖矿步骤解析
  4. Linux-diff和diff3命令
  5. 10分钟!构建支持10万/秒请求的大型网站
  6. RobHess的SIFT代码解析之RANSAC
  7. linux安装cv2踩坑
  8. 流量控制与拥塞控制区别
  9. 解决mac osx下pip安装ipython权限的问题
  10. cors spring_Spring,REST,Ajax和CORS
  11. json php 数组读写_PHP如何将数据写入JSON?
  12. Bmp格式与编程读取解析
  13. 在计算机管理中创建不同的用户,为什么在计算机管理员里创建密码密码总是不符合要求...
  14. word使用中的标题
  15. mysql 设置主键命令_MySQL常用命令
  16. 【路径规划】基于遗传算法求解同时取送货车辆路径问题matlab代码
  17. Java整合ORC识别验证码
  18. vue element-ui列表中el-switch 开关,使用0和1
  19. 如何用C#+WinRAR 实现压缩
  20. Angular2组件开发—模板的逻辑控制(一)

热门文章

  1. Postman最被低估的功能,自动化接口测试效率简直无敌!
  2. MySQL高级-视图
  3. Tween Animation----Translate位置移动动画
  4. 求N个数的最大公倍数
  5. MFC多文档中opencv处理图像打开、保存
  6. [安卓]AndroidManifest.xml文件简介及结构
  7. C++ typedef小结(转载)
  8. unrecognized selector sent to instance问题的解决
  9. 做个程序员身体调查,希望大家点一下!
  10. 前置摄像头 镜像_iPhone 前置摄像头拍照左右相反?试试 iOS 13 的照片编辑功能...