DWORD FindProcessIdByName(const std::string& in_processName)
{
PROCESSENTRY32 processInfo;
processInfo.dwSize = sizeof(processInfo);
HANDLE processesSnapshot = CreateToolhelp32Snapshot(TH32CS_SNAPPROCESS, NULL);
if (processesSnapshot == INVALID_HANDLE_VALUE)
{
return 0;
}
//Process First in snapshot and traverse the list.
Process32First(processesSnapshot, &processInfo);
if (!in_processName.compare(processInfo.szExeFile))
{
//Process exists.
CloseHandle(processesSnapshot);
return processInfo.th32ProcessID;
}
while ( Process32Next(processesSnapshot, &processInfo) )
{
if ( !in_processName.compare(processInfo.szExeFile) )
{
CloseHandle(processesSnapshot);
return processInfo.th32ProcessID;
}
}
CloseHandle(processesSnapshot);
return 0;
}
应用:
#include "windows.h"
#include <string>
#include "tlhelp32.h"
#include <iostream>
#include <stdio.h>
#include <tchar.h>
using namespace std;
DWORD FindProcessIdByName(const std::string& in_processName)
{
PROCESSENTRY32 processInfo;
processInfo.dwSize = sizeof(processInfo);
HANDLE processesSnapshot = CreateToolhelp32Snapshot(TH32CS_SNAPPROCESS, NULL);
if (processesSnapshot == INVALID_HANDLE_VALUE)
{
return 0;
}
//Process First in snapshot and traverse the list.
Process32First(processesSnapshot, &processInfo);
if (!in_processName.compare(processInfo.szExeFile))
{
//Process exists.
CloseHandle(processesSnapshot);
return processInfo.th32ProcessID;
}
while ( Process32Next(processesSnapshot, &processInfo) )
{
if ( !in_processName.compare(processInfo.szExeFile) )
{
CloseHandle(processesSnapshot);
return processInfo.th32ProcessID;
}
}
CloseHandle(processesSnapshot);
return 0;
}
int _tmain(int argc, _TCHAR* argv[]){
std::cout<<"QQ.exe Process ID:"<<FindProcessIdByName("QQ.exe")<<std::endl;
std::cout<<"QQMusic.exe Process ID:"<<FindProcessIdByName("QQMusic.exe")<<std::endl;
return 0;
}
结果:
QQ.exe Process ID:580
QQMusic.exe Process ID:1944
分享到:
相关推荐
VC++源码,1.取得系统进程列表,2.根据进程名,取得进程全路径;
VC获得进程ID获得主线程ID获得窗口句柄获得主窗口获得进程名 1.窗口类名 窗口句柄 窗口标题 窗口句柄 HWND FindWindow( LPCTSTR lpClassName, //窗口类名 可用 VC或者VS自带的Spy++查看 LPCTSTR lpWindowName //...
根据进程ID获取进程的内存使用量,CPU使用率,线程个数据信息,GetSysInfo
VC++2015取得根据进程名称取得进程全路径
易语言通过窗口句柄取得进程ID源码,通过窗口句柄取得进程ID,句柄获得进程ID_DLL
通过进程id获取到所在进程的主窗口的句柄,及通过该主窗口句柄获取当前主窗口的标题,进程名;这是一个demo例程,仅供参考
VC 6.0枚举获取所有进程并进行管理-模拟一个进程管理器的写法,枚举Windows中所有正在运行的进程,本示例将演示如何获取进程路径,打开进程句柄,获取进程优先级,终止进程主函数,创建状态栏,获取当前行行号,...
获取父进程的ID.获取父进程ID的代码 NtQueryInformationProces
Delphi显示进程列表 Delphi取得某进程EXE路径 Delphi取得窗口列表 Delphi取得窗口进程路径 Delphi获取文件属性 Delphi判断程序是否在运行
VB枚举窗口和进程信息-源码,获取当前打开的所有窗口的标题和进程ID信息,类似Windows中的任务管理器的功能,根据窗体的类名或者标题名,调用FindWindow函数来取得相应的窗体,调用BringWindowToTop函数,将窗体激活...
说明:允许调用进程取得子进程的状态信息.调用进程将会挂起直到其 一个子进程终止. 返回值:等待到一个子进程返回时,返回值为该子进程号,否则返回值为 -1.同时stat_loc返回子进程的返回值. 例子:/*父进程*/ if (fork()...
任务管理器的进程信息取得 C语言版 包括应用程序的状态名字等,适合2000,xp,NT,win7,vista
本例将枚举windows当前正在运行的所有进程,并把这些进程信息显示在ListView列表中,这些进程信息主要是进程的ID,优先级,专用内存大小,启动时间并填入ListView控件中,程序利用进程名获取进程数组。
通过进程句柄取得PIDVB很实用的源码,精心挑选的精品源码
易语言源码通过窗口句柄取得进程ID.rar 易语言源码通过窗口句柄取得进程ID.rar 易语言源码通过窗口句柄取得进程ID.rar 易语言源码通过窗口句柄取得进程ID.rar 易语言源码通过窗口句柄取得进程ID.rar 易语言源码...
VB6.0进程管理查看程序,仿Windows任务管理器,可查看当前程序的进程,关闭退出进程,查看进程树,以列表查看指定进程信息等,感觉 比Windows自带的进程 管理 器功能更强大,本程序还实现了热键、托盘的功能,还有使...
2、getpid()函数——取得目前进程的进程标识码。 3、exit()函数——用来正常终结目前进程的执行。 4、sleep()函数——用来延时,它会被挂起,把处理器让给其他的进程。 5、printf()函数——是格式化输出函数...
易语言检测进程是否被暂停源码,检测进程是否被暂停,进程通讯_取得窗口句柄,lms520_FindWindow,lms520_SendMessageTimeout,关闭对象