#include <TlHelp32.h>
BOOL Cex_ProcessKDlg::KillProcess(CString strName)
{
strName.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 = strProcessName.MakeUpper();
if( ( strProcessName.Find(strName,0) != -1 ) )
{
HANDLE hProcess = OpenProcess( PROCESS_TERMINATE , FALSE, 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;
}
[스크랩]
'Computer Science > Languages' 카테고리의 다른 글
[MFC] BMP 비트맵 투명 그리기 (0) | 2015.02.23 |
---|---|
[MFC] 부모 다이얼로그 함수 변수 호출 (0) | 2014.11.18 |
[C/C++] 주민등록번호 규칙 (0) | 2010.12.31 |
Dev-C++ 4.9.9.2 , C/C++ Compiler (0) | 2010.12.01 |
요일구하는 공식 (0) | 2010.11.28 |