굿

프로세스 강제 종료

· 14년 전 · 1018
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>
|
댓글을 작성하시려면 로그인이 필요합니다.

프로그램

+
제목 글쓴이 날짜 조회
14년 전 조회 1,173
14년 전 조회 1,597
14년 전 조회 1,767
14년 전 조회 972
14년 전 조회 2,210
14년 전 조회 2,191
14년 전 조회 1,762
14년 전 조회 1,731
14년 전 조회 1,237
14년 전 조회 1,719
14년 전 조회 1,651
14년 전 조회 1,366
14년 전 조회 1,096
14년 전 조회 2,831
14년 전 조회 2,151
14년 전 조회 1,502
14년 전 조회 2,163
14년 전 조회 1,037
14년 전 조회 1,143
14년 전 조회 1,773
14년 전 조회 1,857
14년 전 조회 1,472
14년 전 조회 1,162
14년 전 조회 1,333
14년 전 조회 1,268
14년 전 조회 2,111
14년 전 조회 2,231
14년 전 조회 2,118
14년 전 조회 1,254
14년 전 조회 1,817
14년 전 조회 1,862
14년 전 조회 1,960
14년 전 조회 3,743
14년 전 조회 1,292
14년 전 조회 2,085
14년 전 조회 1,002
14년 전 조회 1,132
14년 전 조회 991
14년 전 조회 1,443
14년 전 조회 1,891
14년 전 조회 1,430
14년 전 조회 1,292
14년 전 조회 948
14년 전 조회 1,924
14년 전 조회 1,501
14년 전 조회 1,053
14년 전 조회 2,443
14년 전 조회 1,554
14년 전 조회 1,479
14년 전 조회 1,019
14년 전 조회 1,887
14년 전 조회 2,853
14년 전 조회 1,335
14년 전 조회 747
14년 전 조회 2,310
14년 전 조회 2,077
14년 전 조회 1,014
14년 전 조회 1,586
14년 전 조회 1,775
14년 전 조회 1,633
14년 전 조회 999
14년 전 조회 956
14년 전 조회 1,276
14년 전 조회 1,587
14년 전 조회 1,451
14년 전 조회 1,132
14년 전 조회 1,555
14년 전 조회 1,398
14년 전 조회 1,679
14년 전 조회 1,134
14년 전 조회 1,366
14년 전 조회 1,160
14년 전 조회 1,522
14년 전 조회 985
14년 전 조회 2,392
14년 전 조회 1,588
14년 전 조회 3,180
14년 전 조회 1,573
14년 전 조회 1,344
14년 전 조회 1,392
14년 전 조회 1,381
14년 전 조회 852
14년 전 조회 1,093
14년 전 조회 1,165
14년 전 조회 2,612
14년 전 조회 1,247
14년 전 조회 3,616
14년 전 조회 1,083
14년 전 조회 913
14년 전 조회 991
14년 전 조회 1,969
14년 전 조회 1,587
14년 전 조회 1,406
14년 전 조회 1,455
14년 전 조회 1,387
14년 전 조회 1,493
14년 전 조회 1,149
14년 전 조회 756
14년 전 조회 1,264
14년 전 조회 2,424