차이점이 뭔가요?...
동생몬
Attribute VB_Name = ModuleProcessKill
Option Explicit
Private Declare Function TerminateProcess Lib kernel32 (ByVal ApphProcess As Long, ByVal uExitCode As Long) As Long
Private Declare Function OpenProcess Lib kernel32 (ByVal dwDesiredAccess As Long, ByVal blnheritHandle As Long, ByVal dwAppProcessId As Long) As Long
Private Declare Function ProcessFirst Lib kernel32 Alias Process32First (ByVal hSnapshot As Long, uProcess As PROCESSENTRY32) As Long
Private Declare Function ProcessNext Lib kernel32 Alias Process32Next (ByVal hSnapshot As Long, uProcess As PROCESSENTRY32) As Long
Private Declare Function CreateToolhelpSnapshot Lib kernel32 Alias CreateToolhelp32Snapshot (ByVal lFlags As Long, lProcessID As Long) As Long
Private Declare Function CloseHandle Lib kernel32 (ByVal hObject As Long) As Long
Private Const MAX_PATH& = 260
Private Const PROCESS_ALL_ACCESS = (&HF0000 Or &H100000 Or &HFFF Or &H1F0FFF)
Private Const TH32CS_SNAPPROCESS As Long = &H2
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 * MAX_PATH
End Type
Public Sub ProcKill(ProcName As String)
Dim uProcess As PROCESSENTRY32, rProcessFound As Long, hSnapshot As Long, szExename As String, i As Integer, myProcess As Long, exitCode As Long, AppKill As Boolean
uProcess.dwSize = Len(uProcess)
hSnapshot = CreateToolhelpSnapshot(TH32CS_SNAPPROCESS, 0&)
rProcessFound = ProcessFirst(hSnapshot, uProcess)
Do While rProcessFound
i = InStr(1, uProcess.szexeFile, Chr(0))
szExename = LCase$(Left$(uProcess.szexeFile, i - 1))
If LCase$(Right$(ProcName, Len(szExename))) = szExename Then
myProcess = OpenProcess(PROCESS_ALL_ACCESS, False, uProcess.th32ProcessID)
AppKill = TerminateProcess(myProcess, exitCode)
Call CloseHandle(myProcess)
End If
rProcessFound = ProcessNext(hSnapshot, uProcess)
Loop
Call CloseHandle(hSnapshot)
End Sub
사용할땐
ProcKill cmd.exe위 소스랑
Private sub timer1_timer()
shell tskill cmd,vbhide
end sub
위소스랑 뭐가 다른가요?
그리고 맨위 소스 사용법좀요 ..ㅠ
-
나봄
아래껀 tskill 이라는 프로그램이 없으면 실행이 안됩니다.
-
맞손질
저도 모르겠지만
예상하기에는
위에껀 API로 구현해서 프로세스를 잡는 것 같고.
밑에껀 tskill 이란 프로그램으로 해당 프로세스를 죽이는 것 같내요.
번호 | 제 목 | 글쓴이 | 날짜 |
---|---|---|---|
2676093 | 현재프로그램 파일이름을 추출하는걸알고싶습니다 (1) | 도1도캣 | 2024-11-24 |
2676066 | exe를 소스로 만드는법좀.. (3) | 회전력 | 2024-11-23 |
2676034 | 이런 창은 어떻게 지우나요? | 수련 | 2024-11-23 |
2676006 | 질문하나더~ | 찬바리 | 2024-11-23 |
2675930 | 작업관리자 차단 | 별빛 | 2024-11-22 |
2675901 | 숫자를 제외한 문자를 어떻게 나타내야될까요? | 진나 | 2024-11-22 |
2675871 | 거의마지막질문인데요 | 아메 | 2024-11-22 |
2675846 | 제가 완성햇는데요 ㅎ; | 거늘 | 2024-11-21 |
2675824 | 타이머. 프로그래스바 코드 질문입니다. (10) | 빛글 | 2024-11-21 |
2675798 | 이걸 머라고해야 할지모르지만 질문합니다 (2) | 리라 | 2024-11-21 |
2675772 | 구구단 함수 질문이요~! (1) | 테이 | 2024-11-21 |
2675746 | exe저장시 런타임53 에러 | 아픔이보여 | 2024-11-20 |
2675718 | ocx 설치법 | 달달한캔디 | 2024-11-20 |
2675630 | ""안에 큰따음표 넣기. | 터전 | 2024-11-19 |
2675519 | 컴파일 오류 ?? | 슬아라 | 2024-11-18 |
2675492 | 비베 수다 사이트채팅 접속방법 | 마법 | 2024-11-18 |
2675463 | ㅠㅠ;; | 지은 | 2024-11-18 |
2675434 | 타이머로 라벨바꾸는거 (2) | 대나무 | 2024-11-18 |
2675386 | 선형보간법 문의 | 나길 | 2024-11-17 |
2675328 | 프로세스 강제종료하는방법좀... (1) | 슬아라 | 2024-11-17 |