枚举进程
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 | DWORD FindProcess( TCHAR *strProcessName) { DWORD aProcesses[1024], cbNeeded, cbMNeeded; HMODULE hMods[1024]; HANDLE hProcess; TCHAR szProcessName[MAX_PATH]; if (!EnumProcesses(aProcesses, sizeof (aProcesses), &cbNeeded)) return 0; for ( int i = 0; i < ( int )(cbNeeded / sizeof ( DWORD )); i++) { hProcess = OpenProcess(PROCESS_QUERY_INFORMATION | PROCESS_VM_READ, FALSE, aProcesses[i]); EnumProcessModules(hProcess, hMods, sizeof (hMods), &cbMNeeded); GetModuleFileNameEx(hProcess, hMods[0], szProcessName, sizeof (szProcessName)); CString strPrcFullName(szProcessName); CString strPrcName(strProcessName); if (_tcsstr(strPrcFullName, strPrcName) || _tcsstr(strPrcFullName, strPrcName.MakeLower())) { CString strNameFull; strNameFull.Format(_T( "Process full name:\n%s;" ), szProcessName); //AfxMessageBox(strNameFull); return (aProcesses[i]); } } return 0; } |
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
· 浏览器原生「磁吸」效果!Anchor Positioning 锚点定位神器解析
· 没有源码,如何修改代码逻辑?
· 全程不用写代码,我用AI程序员写了一个飞机大战
· DeepSeek 开源周回顾「GitHub 热点速览」
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· 记一次.NET内存居高不下排查解决与启示
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了
2018-04-16 查看程序内存是否泄露
2018-04-16 Ubuntu 安装QT5 后编译程序报错: FindQt5Widgets.cmake
2018-04-16 pcd转换ply
2018-04-16 点云数据保存为pcd文件_pcd_write.cpp