2008년 11월 04일
Kill Process
=================
CTRL+C, CTRL+V
=================
- 자신이 고민하여 만들어보았거나, 내용을 충분히 이해하고 사용해야겠습니다. ^^;
. 내공부족, 절대허덕, 복사지존
아래 함수 원형은 어딘가에서 보고 드르륵 긁었던거 같네요 ^^;
BOOL CMainFrame::KillProcess(CString sExeName)
{
/************************************************************************/
/* Eocs_2007_0823 : Kill Process by Exe Name
/************************************************************************/
sExeName.MakeUpper();
HANDLE hSnapshot = CreateToolhelp32Snapshot ( TH32CS_SNAPPROCESS, 0 );
if ( (int)hSnapshot != -1 )
{
PROCESSENTRY32 pe32 ;
pe32.dwSize=sizeof(PROCESSENTRY32);
BOOL bContinue ;
CString strProcessName;
if ( Process32First ( hSnapshot, &pe32 ) )
{
do
{
strProcessName = pe32.szExeFile; //strProcessName이 프로세스 이름;
strProcessName.MakeUpper();
if( ( strProcessName.Find(sExeName,0) != -1 ) )
{
HANDLE hProcess = OpenProcess( PROCESS_ALL_ACCESS, 0, pe32.th32ProcessID );
if( hProcess )
{
DWORD dwExitCode;
GetExitCodeProcess( hProcess, &dwExitCode);
TerminateProcess( hProcess, dwExitCode);
CloseHandle(hProcess);
CloseHandle( hSnapshot );
return TRUE;
}
return FALSE;
}
bContinue = Process32Next ( hSnapshot, &pe32 );
} while ( bContinue );
}
CloseHandle( hSnapshot );
}
return FALSE;
}
# by | 2008/11/04 15:08 | VC++ | 트랙백 | 덧글(0)





☞ 내 이글루에 이 글과 관련된 글 쓰기 (트랙백 보내기) [도움말]