쓰시려면 사용법보다 이해를 하셔야 할 거 같은데요.
Process ID 를 받아서 프로세스 목록 스냅샷을 떠서 일치하는 프로세스를 찾아 Suspend 시키는 코드입니다.
백진수 님이 쓰신 글 :
: 구글링하다 찾은 suspend process 소스입니다.
: 버튼을 눌러 프로세스를 중지시킬려고 하는데
:
: 사용하는 방법좀 알려주세요..
:
:
:
:
: function SuspendProcess(PID:DWORD):Boolean;
: var
: hSnap: THandle;
: THR32: THREADENTRY32;
: hOpen: THandle;
: begin
: Result := FALSE;
: hSnap := CreateToolhelp32Snapshot(TH32CS_SNAPTHREAD, 0);
: if hSnap <> INVALID_HANDLE_VALUE then
: begin
: THR32.dwSize := SizeOf(THR32);
: Thread32First(hSnap, THR32);
: repeat
: if THR32.th32OwnerProcessID = PID then
: begin
: hOpen := OpenThread($0002, FALSE, THR32.th32ThreadID);
: if hOpen <> INVALID_HANDLE_VALUE then
: begin
: Result := TRUE;
: SuspendThread(hOpen);
: CloseHandle(hOpen);
: end;
: end;
: until Thread32Next(hSnap, THR32) = FALSE;
: CloseHandle(hSnap);
: end;
: end;
|