|
안녕하세요..
두개 프로그램을 선택해서 실행시켜주는 프로그램을 만들려고 합니다.
하나의 메인 화면이 뜨고 거기에서 선택되는 버튼에 따라 2개중의 한 프로그램이 실행됩니다.
자료를 찾다가 이 홈페이지의 팁앤트릭에서
CreateProcess()부분 소스를 가져가서 제 나름대로 고쳐서 사용했습니다.
전에는 WinExec()함수를 사용했었는데,
같은 프로그램을 2개이상 띄우지 않기 위해
현재 이 프로그램이 실행중인지를 확인하는 부분을 위해서
CreateProcess()를 썼습니다.
WinExec()를 쓸때는
SendMessage(프로그램1의 핸들값, WM_CLOSE,0,0L);
SendMessage(프로그램2의 핸들값, WM_CLOSE,0,0L);
을 이용해서 실행시킨 프로그램을 종료시킬 수 있었습니다.
그런데 CreateProcess()로 프로그램을 실행한 후에는 위의 부분이 먹혀들지 않습니다.
실행시킨 프로그램이 종료가 안됩니다.
PROCESS_INFORMATION pinfo1, pinfo2;
pinfo1.hProcess
pinfo2.hProcess //이렇게 선언을 해주고
.
.
.
SendMessage(pinfo1.hProcess, WM_CLOSE,0,0L); //이렇게 핸들값을 넣어주었습니다.
SendMessage(pinfo2.hProcess, WM_CLOSE,0,0L);
설명이 제대로 됐는지 모르겠군요...
그럼 답변을 애타게 기다리겠습니다.
|