|
현재 프로그램의 캡션이 TestApp 라고 하면..
HWND hWnd = FindWindow(NULL, "TestApp ");
if(hWnd)
{
DWORD ProcessId;
GetWindowThreadProcessId(hWnd, &ProcessId); // hWnd로 프로세스 ID를 얻음..
HANDLE hProcess = OpenProcess(PROCESS_ALL_ACCESS, FALSE, ProcessId);
if(hProcess)
{
TerminateProcess(hProcess,0);//또는 ExitProcess 사용해서 죽임..
}
}
요 소스를 프로젝트 WinMain 함수에 넣었는데..
중복실행을 방지하려고 했는데, 처음실행에도 무조건 걸리네요... ㅠㅠ
폼도 안만들어진상태인 WinMain 함수에서 왜 자기자신이 검색이 되는지..
도움부탁드립니다..
참고로 Mutex 도 사용해보았습니다만, 어떤이유에서인지 테스트부서에서 몇십회 실행중에 중복실행이 된다고 하네요... PC입수할수 있는 환경도 아님 ㅠㅠ
|