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运行时错误. 这对新手来说是司空见惯的事,因为不太熟悉难免会出错,出错的信息如果能显示很 ...
随机推荐
- 用 rebar 来构建、编译、测试、发布 Erlang 应用程序
转自:http://dhq.me/build-compile-eunit-release-erlang-application-with-rebar rebar 是一个遵循 Erlang/OTP 原则 ...
- 菲菲更名宝贝 得意非凡版 v1.9 免费绿色版
软件名称: 菲菲更名宝贝 得意非凡版软件语言: 简体中文授权方式: 免费软件运行环境: Win8 / Win7 / Vista / WinXP软件大小: 12.5MB图片预览: 软件简介:菲菲更名宝贝 ...
- JavaScript(9)——call与apply
call与apply call和apply方法可以通过函数名称来调用函数.有两个参数 call()方法与apply()方法的作用相同,他们的区别仅在于接收参数的方式不同. [call] 调用一个对象的 ...
- RSA 公私钥 互换问题
关于 RSA,我的理解是: 按定义的话,公私钥是可以互换的 问题是常见的实现里面,保存“私钥”的那个数据结构或者文件,里面除了私钥所必需的那一对数之外,还有额外的信息(足以算出公钥来),所以绝对不能把 ...
- Shell变量:Shell变量的定义、删除变量、只读变量、变量类型
http://c.biancheng.net/cpp/shell/ 1.打印 2.运算符
- 学习笔记——责任链模式ChainOfResponsibility
责任链模式,主要是通过自己记录一个后继者来判断当前的处理情况.Handler中,再增加一个方法用于设置后继对象,如SetHandler(Handler obj). 然后Handler类以其子类的处理方 ...
- Load$$ execution region symbols
6.3.3 Load$$ execution region symbols The linker generates Load$$ symbols for every execution region ...
- Android系统手机端抓包方法(tcpdump)
抓包准备 1. Android手机需要先获得root权限.一种是否获得root权限的检验方法:安装并打开终端模拟器(可通过安卓市场等渠道获得).在终端模拟器界面输入su并回车,若报错则说明未root, ...
- mysql常用命令使用技巧
一.连接Mysql格式: mysql -h主机地址 -u用户名 -p用户密码 1.连接到本机上的MYSQL.首先打开DOS窗口,然后进入目录mysql\bin,再键入命令mysql -u root - ...
- Chapter 2 Open Book——11
"Hey, Dad, welcome home." hey爸爸,欢迎回家. "Thanks." He hung up his gun belt and step ...