C++Builder Programming Forum
C++Builder  |  Delphi  |  FireMonkey  |  C/C++  |  Free Pascal  |  Firebird
볼랜드포럼 BorlandForum
 경고! 게시물 작성자의 사전 허락없는 메일주소 추출행위 절대 금지
C++빌더 포럼
Q & A
FAQ
팁&트릭
강좌/문서
자료실
컴포넌트/라이브러리
메신저 프로젝트
볼랜드포럼 홈
헤드라인 뉴스
IT 뉴스
공지사항
자유게시판
해피 브레이크
공동 프로젝트
구인/구직
회원 장터
건의사항
운영진 게시판
회원 메뉴
북마크
볼랜드포럼 광고 모집

C++빌더 Q&A
C++Builder Programming Q&A
[55033] Re:Re:프로세스 죽이고 살리는 방법
터미네이트 [kth1204] 2275 읽음    2008-10-27 20:02
보내주신 답변 감사합니다.

TeminateProcess을 사용하기위해서는 죽여야할 Process의 PID를 알아야할것 같은데
죽여야할 프로그램의 PID를 어떻게 받아야할지????

   HWND hWnd = FindWindow(NULL, "제목 없음 - 메모장");
       if(hWnd)
    {
        DWORD ProcessId;
        GetWindowThreadProcessId(hWnd, &ProcessId); // hWnd로 프로세스 ID를 얻음..
        HANDLE hProcess = OpenProcess(PROCESS_ALL_ACCESS, FALSE, ProcessId);
        if(hProcess)
        {
            TerminateProcess(hProcess,0);//또는 ExitProcess 사용해서 죽임..
        }
    }

위와같이 Setting을 하면 메모장이 죽어지지만 제가 죽여야되는 프로그램은 d:\\NanoLoader.exe파일을
종료해야하는데 Window작업관리자에서 PID를 받아야하는데...어떻게 받죠?
   =>HWND hWnd = FindWindow(NULL, "NanoLoader.exe");






장성호 님이 쓰신 글 :
: 1. 프로그램 종료
:    TeminateProcess 를 이용하면 될것이구
:
:    윈도우 어플이면
:    WM_CLOSE  ,  WM_QUIT 를 날린후에 종료 안되면 강제종료하는것이 좋을수도...
:
:
:
: 2. 프로그램 실행
:     ShellExecute 또는 CreateProcess를 이용하여..
:
:
: 그럼..
:
:
: 터미네이트 님이 쓰신 글 :
: : 버튼두개있는 프로그램을 만들어서
: : 1번 버튼을 누르면 D:\\Loader.exe파일을 죽이고(동료하고)
: : 2번 버튼을 누르면 D:\\Loader.exe파일을 실행시키는 프로그램을 만들고 싶은데 알려주세요.
: :
: : 프로세스를 죽이려면 PID를 받고 그 핸들로 프로세스를 죽인다고하는데....
: :
: :
: : 감사합니다.

+ -

관련 글 리스트
55031 프로세스 죽이고 살리는 방법 터미네이트 1761 2008/10/27
55032     Re:프로세스 죽이고 살리는 방법 장성호 1973 2008/10/27
55033         Re:Re:프로세스 죽이고 살리는 방법 터미네이트 2275 2008/10/27
55034             Re:Re:Re:프로세스 죽이고 살리는 방법 장성호 3686 2008/10/27
Google
Copyright © 1999-2015, borlandforum.com. All right reserved.