松鼠的博客

导航

统计

CreateToolhelp32Snapshot应用实例

//--------------   以下的语句将进程ID映射为进程名   ----------------//   
复制代码
    HANDLE hProcess;
    HANDLE hProcessSnap 
= NULL;
    hProcessSnap 
= CreateToolhelp32Snapshot(TH32CS_SNAPPROCESS,0);//0表示当前进程
    if(hProcessSnap == (HANDLE)-1)
    {
        
return;
    }
    CString   cspid;   
    PROCESSENTRY32   pe32
={0};
    pe32.dwSize
=sizeof(PROCESSENTRY32);
    
if(Process32First(hProcessSnap,&pe32))
    {
        
do
        {
            
for(int   i   =   0;   i   <   iterm;   i++)
            {
                cspid   
=   m_ListCtrl1.GetItemText(i,4);
                
if(pe32.th32ProcessID   ==   (unsigned   long)atoi(cspid))
                {
                    m_ListCtrl1.SetItemText(i,
5,pe32.szExeFile);   //将进程名写入ListCtrl
                }
            }
        }
        
while(Process32Next(hProcessSnap,&pe32));
    }
    CloseHandle(hProcessSnap);
复制代码

//-------------------   将进程ID映射为进程名   结束   -----------------//  
   
  其中pe32.szExeFile是进程名,用pe32.th32ProcessID可获得进程ID  
  要获得进程句柄的话,用OpenProcess就行了

posted on   Xproer-松鼠  阅读(1108)  评论(0编辑  收藏  举报

编辑推荐:
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
· 浏览器原生「磁吸」效果!Anchor Positioning 锚点定位神器解析
· 没有源码,如何修改代码逻辑?
阅读排行:
· 全程不用写代码,我用AI程序员写了一个飞机大战
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· 记一次.NET内存居高不下排查解决与启示
· DeepSeek 开源周回顾「GitHub 热点速览」
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了
点击右上角即可分享
微信分享提示