打造自己的任务管理器

王朝vc·作者佚名  2006-01-09
窄屏简体版  字體: |||超大  

用OnFresh()对当前进程表进行刷新

void OnFresh()

{

m_number=0;

m_wndList.ResetContent();

HANDLE hSnapshot;

hSnapshot=CreateToolhelp32Snapshot(TH32CS_SNAPPROCESS,0);

PROCESSENTRY32 pe;

Process32First(hSnapshot,&pe);

do{

int index=m_wndList.AddString(pe.szExeFile);

m_wndList.SetItemData(index,pe.th32ProcessID);

m_number++;

}while(Process32Next(hSnapshot,&pe));

CloseHandle(hSnapshot);

GetDlgItem(IDC_STOP)->EnableWindow(FALSE);

UpdateData (FALSE);

}

用void OnStop()对指定进程的停止操作

void CSHUTDOWNDlg::OnStop()

{

int index=m_wndList.GetCurSel();

DWORD data=m_wndList.GetItemData (index);

HANDLE hProcess;

hProcess=OpenProcess(PROCESS_TERMINATE,FALSE,data);

if(hProcess)TerminateProcess(hProcess,0);

else MessageBox("该程序可能已被关闭");

Sleep(500);

OnFresh();

}

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
 
 
© 2005- 王朝網路 版權所有 導航