보안세상

WINAPI를 이용한 프로세스 실행여부 확인하기 본문

공부

WINAPI를 이용한 프로세스 실행여부 확인하기

똔민 2015. 9. 22. 17:28
반응형

프로세스의 실행여부를 체크할 수 잇는 소스코드 입니다.

#include <TlHelp32.h> BOOL IsRunProcess(TCHAR * searchFile) { HANDLE hProcessSnap; PROCESSENTRY32 pe32; hProcessSnap = CreateToolhelp32Snapshot( TH32CS_SNAPPROCESS, 0 ); if( hProcessSnap == INVALID_HANDLE_VALUE ) { return( FALSE ); } pe32.dwSize = sizeof( PROCESSENTRY32 ); if( !Process32First( hProcessSnap, &pe32 ) ) { CloseHandle( hProcessSnap ); return( FALSE ); } TCHAR searchFileTemp[MAX_PATH] = {0,}; _tcscpy_s(searchFileTemp, MAX_PATH, searchFile); _tcslwr_s(searchFileTemp,MAX_PATH); do { TCHAR exeFileTemp[MAX_PATH] = {0,}; _tcscpy_s(exeFileTemp, MAX_PATH, pe32.szExeFile); _tcslwr_s(exeFileTemp,MAX_PATH); if(_tcscmp(exeFileTemp,searchFileTemp) == 0) { CloseHandle( hProcessSnap ); return TRUE; } } while( Process32Next( hProcessSnap, &pe32 ) ); CloseHandle( hProcessSnap ); return( FALSE ); } SUITE(IsRunProcess) { TEST(IsRunProcess1) { BOOL bFlag = IsRunProcess(_TEXT("iexplore.exe")); CHECK(bFlag); } }


반응형
Comments