扫描系统进程和获取某进程的PID
扫描系统的所有进程
- #include <stdio.h>
- #include <windows.h>
- #include <tlhelp32.h>
- int scan()
- {
- HANDLE hprocessShap = NULL;
- PROCESSENTRY32 pe32 = {};
- hprocessShap = CreateToolhelp32Snapshot(TH32CS_SNAPALL, );
- if(hprocessShap == INVALID_HANDLE_VALUE)
- {
- printf("\nCreateToolhelp32Snapshot() failed:%d", GetLastError());
- return ;
- }
- pe32.dwSize = sizeof(PROCESSENTRY32);
- if(Process32First(hprocessShap, &pe32))
- {
- do
- {
- wprintf(pe32.szExeFile);
- printf("\n");
- }
- while (Process32Next(hprocessShap, &pe32));
- }
- else
- {
- printf("\nProcess32First() failed:%d", GetLastError());
- }
- CloseHandle(hprocessShap);
- return ;
- }
- int main(int argc, char *argv)
- {
- scan();
- return ;
- }
获取某进程的PID
有时候在对系统某个进程进行操作时,我们需要获取程序的PID作为参数。其中一个方法当然是在任务管理器的详细信息里寻找,另外一个方法就是通过代码获取到进程的PID直接利用
- int getpid(wchar_t *name)
- {
- HANDLE hprocessShap = NULL;
- //存放快照进程信息的结构体
- PROCESSENTRY32 pe32 = {};
- //对系统的进程建立一个快照进行扫描
- hprocessShap = CreateToolhelp32Snapshot(TH32CS_SNAPALL, );
- if(hprocessShap == INVALID_HANDLE_VALUE)
- {
- printf("\nCreateToolhelp32Snapshot() failed:%d", GetLastError());
- return ;
- }
- //设置结构体的大小
- pe32.dwSize = sizeof(PROCESSENTRY32);
- //Process32First获得第一个进程的句柄
- if(Process32First(hprocessShap, &pe32))
- {
- //匹配输入的进程名
- do
- {
- if(!wcscmp(name, pe32.szExeFile))
- {
- return (int)pe32.th32ProcessID;
- }
- }
- while (Process32Next(hprocessShap, &pe32));
- }
- else
- {
- printf("\nProcess32First() failed:%d", GetLastError());
- }
- CloseHandle(hprocessShap);
- return ;
- }
扫描系统进程和获取某进程的PID的更多相关文章
- 获取当前进程的pid
获取当前进程的pid import java.lang.management.ManagementFactory; import java.lang.management.RuntimeMXBean; ...
- 在Shell脚本中获取指定进程的PID
注意这条命令用反引号(Tab上面的那个键)括起来,作用类似于${ } processId = ` ps -ef | grep fms.jar | grep -v grep | awk '{print ...
- nodejs的process模块如何获取其他进程的pid
var cmd=process.platform=='win32'?'tasklist':'ps aux'; var exec = require('child_process').exec; var ...
- Linux中的程序和进程,PID和PPID
环境:Vmware Workstation:CentOS-6.4-x86_64 程序和进程: 1.程序:程序是静止的,程序就是磁盘上的一个文件. 2.进程:进程是一个正在执行的程序的实例. 3.进程是 ...
- python 使用标准库根据进程名获取进程的pid
有时候需要获取进程的pid,但又无法使用第三方库的时候. 方法适用linux平台. 方法1 使用subprocess 的check_output函数执行pidof命令 from subprocess ...
- 【linux】linux下准确查询正在tomcat下运行的java进程。准确获取正在运行的java进程的PID
准确获取定位到tomcat下正在运行的java进程的PID命令: ps -ef|grep java | grep catalina | awk '{print $2}' 准确定位到tomcat下正在运 ...
- linux获取精准进程PID之pgrep命令
pgrep 是通过程序的名字来查询进程的工具,一般是用来判断程序是否正在运行.在服务器的配置和管理中,这个工具常被应用,简单明了. 用法: #pgrep [选项] [程序名] pgrep [-flvx ...
- linux -- 进程的查看、进程id的获取、进程的杀死
进程查看 ps ax : 显示当前系统进程的列表 ps aux : 显示当前系统进程详细列表以及进程用户 ps ax|less : 如果输出过长,可能添加管道命令 less查看具体进程, 如:ps a ...
- windows下使用C#获取特定进程网络流量
最近老板接了一个中船重工的项目,需要做一个有关海军软件系统的组件评估项目,项目中有一个子项目需要获取特定进程的各种系统参数,项目使用.NET平台.在获取特定进程各种系统参数时,其它诸如进程ID,进程名 ...
随机推荐
- Wordpress显示文章摘要
放在文章的循环里: <?php if (!empty($post->post_excerpt) ) { //如果文章有摘要则输出摘要 the_excerpt(); } ?>
- 怎样让两个DIV在同一水平线上面显示
css定义第二个div. float:right或者left. margin-top:0px 确保第二个DIV的宽度.如果宽度宽的话,会自动到下方的.
- 9 月份 GitHub 上最火的 JavaScript 开源项目!
推荐 GitHub 上9 月份最受欢迎的 10 个 JavaScript 开源项目,在这些项目中,你有在用或用过哪些呢? 1.基于 Promise 的 HTTP 客户端 Axios https://g ...
- protobuf 动态创建
https://www.ibm.com/developerworks/cn/linux/l-cn-gpb/index.html https://originlee.com/2015/03/14/ana ...
- Mac NPM 配置
1.NPM 简介 NPM(node package manager),通常称为 node 包管理器,是目前世界上最大的开源库生态系统.使用 NPM 可以对 node 包进行安装.卸载.更新.查看.搜索 ...
- 华为S12700 NQA配置
首先,nqa功能是需要授权的. 以下以ICMP配置方式示例: 在配置ICMP测试之前,需要NQA客户端与被测试设备间路由可达.(ICMP测试提供类似于普通ping命令的功能,但输出信息更为丰富.) 请 ...
- SecureCRT自动上传文件python脚本
本人在ubuntu下使用SecureCRT,上传文件习惯用rz命令.每次上传都弹对话框选择文件按确定后才上传,感觉很费力.最后自己摸索整理出一个脚本. 使用方法是,在[Script]菜单点[Run.. ...
- (原)关于udp的socket发送数据耗时的问题探讨
转载请注明出处:http://www.cnblogs.com/lihaiping/p/6811791.html 本学习笔记,仅用于问题探讨,如有不同,可以讨论. 最近在看流媒体分发服务器的相关代码,其 ...
- centos7下使用docker安装nginx
需要环境docker,此处不做介绍. 1. docker拉取官方nginx镜像 docker pull nginx 2. 等待下载完成后,我们就可以在本地镜像列表里查到 REPOSITORY 为 ng ...
- java,php,js;AES 互通加解密
1,Java端(依赖 common-codec jar) package com.jiaMi; import javax.crypto.Cipher; import javax.crypto.sp ...