Windows API 之 CreateToolhelp32Snapshot
CreateToolhelp32Snapshot:
参考:
https://msdn.microsoft.com/en-us/library/ms682489%28VS.85%29.aspx
HANDLE WINAPI CreateToolhelp32Snapshot(
_In_ DWORD dwFlags,
_In_ DWORD th32ProcessID
);
#include <windows.h>
#include <TlHelp32.h>
#include <iostream>
#include <tchar.h> using namespace std; DWORD GetProcessIDByName(TCHAR *szProcName)
{
DWORD dwProcID = ;
HANDLE hProcessSnap;
PROCESSENTRY32 pe32; //获取系统中全部进程的快照 Take a snapshot of all processes in the system.
//TH32CS_SNAPPROCESS:在快照中包含系统中所有的进程。
hProcessSnap = CreateToolhelp32Snapshot(TH32CS_SNAPPROCESS, );
if (INVALID_HANDLE_VALUE == hProcessSnap)
return(FALSE); pe32.dwSize = sizeof(PROCESSENTRY32); // 获取第一个进程的信息 Retrieve information about the first process,
// 若获取失败则退出 and exit if unsuccessful
if (!Process32First(hProcessSnap, &pe32))
{
// 清除快照 clean the snapshot object
CloseHandle(hProcessSnap);
cout << "!!! Failed to gather information on system processes! \n" << endl;
return(NULL);
}
//匹配进程ID Matching Process ID
do
{
if (!strcmp(szProcName,pe32.szExeFile))
{
//拷贝进程名 Copy Process Name
cout << pe32.szExeFile << " : " << pe32.th32ProcessID << endl;
dwProcID = pe32.th32ProcessID;
}
//cout << pe32.szExeFile << endl;
} while (Process32Next(hProcessSnap, &pe32)); // 清除快照 clean the snapshot object
CloseHandle(hProcessSnap); return dwProcID;
} int main()
{
TCHAR *szProcessName = "chrome.exe";
GetProcessIDByName(szProcessName); system("pause");
return ;
}
找到对应的进程ID:
aaarticlea/png;base64,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" alt="" />
Windows API 之 CreateToolhelp32Snapshot的更多相关文章
- Windows API 进程相关笔记
0. 前言 最近做了一个进程信息相关的项目,整理了一下自己做项目时的笔记,分享给大家 1. 相关概念 1.1 HANDLE 概念 HANDLE(句柄)是Windows操作系统中的一个概念. 在Wind ...
- C# Windows API
API:应用程序接口(API:Application Program Interface)应用程序接口(API:application programming interface)是一组定义.程序及协 ...
- Windows API 函数列表 附帮助手册
所有Windows API函数列表,为了方便查询,也为了大家查找,所以整理一下贡献出来了. 帮助手册:700多个Windows API的函数手册 免费下载 API之网络函数 API之消息函数 API之 ...
- Windows API Hooking in Python
catalogue . 相关基础知识 . Deviare API Hook Overview . 使用ctypes调用Windows API . pydbg . winappdbg . dll inj ...
- 初识【Windows API】--文本去重
最近学习操作系统中,老师布置了一个作业,运用系统调用函数删除文件夹下两个重复文本类文件,Linux玩不动,于是就只能在Windows下进行了. 看了一下介绍Windows API的博客: 点击打开 基 ...
- C#调用windows API的一些方法
使用C#调用windows API(从其它地方总结来的,以备查询) C#调用windows API也可以叫做C#如何直接调用非托管代码,通常有2种方法: 1. 直接调用从 DLL 导出的函数. 2. ...
- Qt中使用Windows API
在Windows平台上进行开发,不可避免与Windows API打交道,Qt中使用的时候要添加对应API的头文件和链接lib文件,另外使用的Windows API的代码部分要使用#ifdef Q_O ...
- 在VBA中使用Windows API
VBA是一种强大的编程语言,可用于自定义Microsoft Office解决方案.通过使用VBA处理一个或多个Office应用程序对象模型,可以容易地修改Office应用程序的功能或者能够使两个或多个 ...
- FormatMessage与GetLastError配合使用,排查windows api调用过程中的错误
前一段时间在学习windows api调用过程中,遇到过一些调用错误或者程序没能显示预期的结果,或者直接出现vc运行时错误. 这对新手来说是司空见惯的事,因为不太熟悉难免会出错,出错的信息如果能显示很 ...
随机推荐
- Python笔记1-20151021
一.字符串和字符编码 字符 ASCII Unicode UTF-8 A 01000001 00000000 01000001 01000001 中 x 01001110 00101101 111001 ...
- Windows kernel pool 初探(2014.12)
Windows kernel pool 1. 简介 Kernel pool类似于Windows用户层所使用Heap,其为内核组件提供系统资源.在系统初始化的时候,内存管理模块就创建了pool. 严格的 ...
- HTML+CSS Day10实例
1.家居大视野 效果图: 代码: <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "h ...
- iOS拨打电话
1,这种方法,拨打完电话回不到原来的应用,会停留在通讯录里,而且是直接拨打,不弹出提示NSMutableString * str=[[NSMutableString alloc] initWithFo ...
- cmd命令行
拷贝
- C++之文件输入输出
在这里遇见不少的问题,其中的路径问题就是在windows中,\\转义字符才能准确的表示路径 #include <iostream> #include <fstream> #in ...
- VO , PO , BO , QO, DAO ,POJO
VO , PO , BO , QO, DAO ,POJO, O/R Mapping 是 Object Relational Mapping (对象关系映射)的缩写.通俗点讲,就是将对象与关系数据库绑定 ...
- TextBox只读时不能通过后台赋值取值解决办法
给页面的TextBox设置ReadOnly="True"时,在后台代码中不能赋值取值,下边几种方法可以避免: 1.不设置ReadOnly,设置onfocus=this.blur( ...
- caffe卷积输入通道如何到输出通道
今天一个同学问 卷积过程好像是对 一个通道的图像进行卷积, 比如10个卷积核,得到10个feature map, 那么输入图像为RGB三个通道呢,输出就为 30个feature map 吗, 答案肯定 ...
- linux脚本定期执行
vi /etc/crontab SHELL=/bin/bash PATH=/sbin:/bin:/usr/sbin:/usr/bin MAILTO=root HOME=/ # .----------- ...