Q&A

  • 프로세스 죽이기(정말 힘들당)
먼저 제 글을 읽어 주셔서 감사합니다.



프로세스 죽이는 루틴을 찾아 받는데,, 잘 안되더라구요..

제 프로그램이 끝날때 OCX가 안 죽어,,, 프로그램이 종료 할때 죽이는 루틴을

짰는데,, 생각처럼 쉽지 않네요.. 아래와 같이 했는데,,, 잘 될땐 잘 되던데,,

갑자기 안될때가 있더라구요..(OS는 NT구요,, 안 죽을땐 작업매니저에서 죽여도 안죽더라구요) (와~!! 윗글을 읽어보니,, 내가 썼지만 상당히 쌀벌하다,,)



꼭 알려주세요.. 어떻게 하면 프로세스를 잘 죽일 수 있을까요..

아래 파일은 dpr

....

....

Application.Run;

//타이틀 이름으로 찾던지, class 이름으로 찾던

hwnd := FindWindow('TFrmMain',nil);

GetWindowThreadProcessId(hwnd,@dwProcessId); // 프로세스의 아디를 가져오죠..



// 핸들을 가져 옵니다.. 뭐 그럴게들 하데요..

hProcess := OpenProcess(PROCESS_ALL_ACCESS,Boolean(0),dwProcessId);

// 종료 조건이 무엇일까.. 가져옵니다.

bSuccess := GetExitCodeProcess(hProcess,dwExitCode);

if(bSuccess <> False) then

TerminateProcess(hProcess,dwExitCode); // 죽이버리죠..











0  COMMENTS