VB监视进程
如何让VB程序监视进程中的名称“Windows任务管理器”,和“中华人民共和国”两个进程的进程名,而且进行操作:如果“Windows任务管理器”被关闭时则自动关闭“中华人...
如何让VB程序监视进程中的名称“Windows 任务管理器”,和“中华人民共和国”两个进程的进程名,而且进行操作:如果“Windows 任务管理器”被关闭时则自动关闭“中华人民共和国”程序!
这个该怎么写代码???请写清代码!谢谢
在线等啊!
逍遥忘我,你好!感谢你的帮助!
你的代码我运行了,可它终止“中华人民共和国”时会询问退出(程序自已的退出询问),请问怎样写才能无询问终止“中华人民共和国”进程呢?
谢谢 展开
这个该怎么写代码???请写清代码!谢谢
在线等啊!
逍遥忘我,你好!感谢你的帮助!
你的代码我运行了,可它终止“中华人民共和国”时会询问退出(程序自已的退出询问),请问怎样写才能无询问终止“中华人民共和国”进程呢?
谢谢 展开
展开全部
可以用一个 Timer 定时执行下面的代码
Dim Handle As Long
Handle = FindWindow(vbnullstring,"Windows 任务管理器")
Dim Handle2 as long
Handle2 = FindWindow(vbnullstring,"中华人民共和国")
if not (Handle) then
SendMessage Handle2,WM_CLOSE,0,0
前面需要声明两个API和定义常量,我很久没用VB了,可能格式有错误!你试试
这里我写了一个.
---------------------------------------------
Option Explicit
Private Declare Function FindWindow Lib "user32" Alias "FindWindowA" (ByVal lpClassName As String, ByVal lpWindowName As String) As Long
Private Declare Function GetWindowThreadProcessId Lib "user32" (ByVal hwnd As Long, lpdwProcessId As Long) As Long
Private Declare Function TerminateProcess Lib "kernel32" (ByVal hProcess As Long, ByVal uExitCode As Long) As Long
Private Declare Function OpenProcess Lib "kernel32" (ByVal dwDesiredAccess As Long, ByVal bInheritHandle As Long, ByVal dwProcessId As Long) As Long
Private Sub Timer1_Timer()
Dim Handle As Long
Dim handle2 As Long
Dim ProHandle As Long
Dim ProcessHandle As Long
Handle = FindWindow(vbNullString, "Windows 任务管理器")
If Handle = 0 Then
handle2 = FindWindow(vbNullString, "中华人民共和国")
GetWindowThreadProcessId handle2, ProHandle
ProcessHandle = OpenProcess(1, 0, ProHandle)
TerminateProcess ProcessHandle, 0
End If
End Sub
---------------------------------
我拿计算器和任务管理器测试的可以完成!
Dim Handle As Long
Handle = FindWindow(vbnullstring,"Windows 任务管理器")
Dim Handle2 as long
Handle2 = FindWindow(vbnullstring,"中华人民共和国")
if not (Handle) then
SendMessage Handle2,WM_CLOSE,0,0
前面需要声明两个API和定义常量,我很久没用VB了,可能格式有错误!你试试
这里我写了一个.
---------------------------------------------
Option Explicit
Private Declare Function FindWindow Lib "user32" Alias "FindWindowA" (ByVal lpClassName As String, ByVal lpWindowName As String) As Long
Private Declare Function GetWindowThreadProcessId Lib "user32" (ByVal hwnd As Long, lpdwProcessId As Long) As Long
Private Declare Function TerminateProcess Lib "kernel32" (ByVal hProcess As Long, ByVal uExitCode As Long) As Long
Private Declare Function OpenProcess Lib "kernel32" (ByVal dwDesiredAccess As Long, ByVal bInheritHandle As Long, ByVal dwProcessId As Long) As Long
Private Sub Timer1_Timer()
Dim Handle As Long
Dim handle2 As Long
Dim ProHandle As Long
Dim ProcessHandle As Long
Handle = FindWindow(vbNullString, "Windows 任务管理器")
If Handle = 0 Then
handle2 = FindWindow(vbNullString, "中华人民共和国")
GetWindowThreadProcessId handle2, ProHandle
ProcessHandle = OpenProcess(1, 0, ProHandle)
TerminateProcess ProcessHandle, 0
End If
End Sub
---------------------------------
我拿计算器和任务管理器测试的可以完成!
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询