굿

프로세스 강제 종료

· 2011-03-17 (목) 11:49:07 · 2394
Option Explicit

Private Declare Function CreateToolhelp32Snapshot Lib "kernel32" (ByVal lFlags As Long, ByVal lProcessID As Long) As Long
Private Declare Function Process32First Lib "kernel32" (ByVal hSnapShot As Long, uProcess As PROCESSENTRY32) As Long
Private Declare Function Process32Next Lib "kernel32" (ByVal hSnapShot As Long, uProcess As PROCESSENTRY32) As Long
Private Declare Sub CloseHandle Lib "kernel32" (ByVal hPass As Long)
Private Const TH32CS_SNAPPROCESS As Long = &H2
Private Type PROCESSENTRY32
dwSize As Long
cntUsage As Long
th32ProcessID As Long
th32DefaultHeapID As Long
th32ModuleID As Long
cntThreads As Long
th32ParentProcessID As Long
pcPriClassBase As Long
dwFlags As Long
szExeFile As String * 260
End Type
Private Declare Function OpenProcess Lib "kernel32.dll" (ByVal dwDesiredAccess As Long, ByVal bInheritHandle As Long, ByVal dwProcessId As Long) As Long
Private Const PROCESS_TERMINATE As Long = (&H1)
Private Declare Function TerminateProcess Lib "kernel32.dll" (ByVal hProcess As Long, ByVal uExitCode As Long) As Long
Private Declare Sub Sleep Lib "kernel32.dll" (ByVal dwMilliseconds As Long)

Public Function GetPidByImage(ByVal image As String) As Long
On Local Error GoTo ErrOut:
Dim hSnapShot As Long
Dim uProcess As PROCESSENTRY32
Dim r As Long, l As Long

hSnapShot = CreateToolhelp32Snapshot(TH32CS_SNAPPROCESS, 0&)
If hSnapShot = 0 Then Exit Function
uProcess.dwSize = Len(uProcess)
r = Process32First(hSnapShot, uProcess)
l = Len(image)
If l = 0 Then Exit Function
Do While r
If LCase(Left(uProcess.szExeFile, l)) = LCase(image) Then
GetPidByImage = uProcess.th32ProcessID
Exit Do
End If
r = Process32Next(hSnapShot, uProcess)
Loop
Call CloseHandle(hSnapShot)
ErrOut:
End Function

Public Sub KillPID(ByVal pid As Long)
On Local Error Resume Next
Dim h As Long
If pid = 0 Then Exit Sub
h = OpenProcess(PROCESS_TERMINATE, False, pid)
TerminateProcess h, 0
CloseHandle h
Sleep 1000
ErrOut:
End Sub<div class='small'>[이 게시물은 관리자님에 의해 2011-10-31 16:46:12 기타에서 이동 됨]</div>
댓글을 작성하시려면 로그인이 필요합니다.

프로그램

8,188건
+
제목 글쓴이 날짜 조회
16-07-13 조회 2,172
16-07-12 조회 2,359
16-07-12 조회 2,385
16-07-11 조회 2,193
16-06-05 조회 2,923
16-06-03 조회 3,045
16-05-26 조회 2,965
15-09-22 조회 4,992
15-06-10 조회 4,837
14-10-25 조회 6,367
14-10-22 조회 8,989
14-09-21 조회 5,794
14-09-16 조회 5,081
14-08-22 조회 1.1만
14-08-13 조회 5,917
14-08-12 조회 5,446
14-08-12 조회 6,308
14-08-11 조회 6,935
14-06-12 조회 6,215
14-06-11 조회 5,119
14-05-09 조회 5,434
14-05-09 조회 6,391
14-05-09 조회 6,423
14-05-08 조회 5,757
14-04-17 조회 4,765
14-04-16 조회 4,592
14-04-15 조회 4,592
14-04-15 조회 4,541
14-04-15 조회 4,310
14-04-14 조회 4,293
14-04-14 조회 4,263
14-04-14 조회 4,641
14-04-14 조회 4,783
14-04-14 조회 4,772
14-04-13 조회 4,674
14-04-12 조회 4,243
14-04-12 조회 4,385
14-04-12 조회 4,493
14-04-11 조회 5,015
14-04-10 조회 4,753
14-04-10 조회 4,783
14-04-09 조회 4,943
14-04-09 조회 5,314
14-04-08 조회 6,979
13-10-30 조회 7,661
13-07-11 조회 5,141
13-03-28 조회 1.1만
13-02-27 조회 6,794
13-02-14 조회 5,617
13-01-10 조회 4,524
12-12-31 조회 5,107
12-12-20 조회 6,124
12-12-12 조회 5,280
12-12-07 조회 4,510
12-11-28 조회 4,860
12-11-22 조회 5,303
12-11-12 조회 5,663
12-09-22 조회 4,518
12-09-18 조회 4,707