发信人: headstream() 
整理人: wenbobo(2002-12-27 15:55:46), 站内信件
 | 
 
 
生成一个dialog based程序,在Dialog上放一个按钮,一个List,假设List
 的ID是IDC_LIST1,加入下面这段代码,可列出所以正在运行的程序,包括
 绝对路径。
 按钮部分:
 void CMyDlg::OnButton1() 
 {
     // TODO: Add your control notification handler code here
     HANDLE hSnapshot=pCreateToolhelp32Snapshot(TH32CS_SNAPPROCESS,0);  
     PROCESSENTRY32 pe; 
     if(!hSnapshot) 
         return; 
     CListBox * list=(CListBox *)GetDlgItem(IDC_LIST1); 
     list->ResetContent(); 
     pe.dwSize=sizeof(pe); 
     for(int i=pProcess32First(hSnapshot,&pe);i;i=pProcess32Next(hSnaps hot,&pe)) 
     { 
         HANDLE hModuleSnap=NULL; 
         MODULEENTRY32 me; 
         hModuleSnap=pCreateToolhelp32Snapshot(TH32CS_SNAPMODULE, pe.th 32ProcessID); 
         if(hModuleSnap==(HANDLE)(-1)) 
             return; 
         me.dwSize=sizeof(MODULEENTRY32); 
         if(pModule32First(hModuleSnap,&me)) 
         { 
             do 
             { 
                 if(me.th32ModuleID==pe.th32ModuleID) 
                 { 
                     list->AddString(me.szExePath); 
                     break; 
                 } 
             }while(pModule32Next(hModuleSnap,&me)); 
         } 
     } 
     CloseHandle(hSnapshot); 
 }
  -- 不是我不明白,计算机这玩意儿变化快
  ※ 来源:.月光软件站 http://www.moon-soft.com.[FROM: 202.97.30.181]
  | 
 
 
 |