vb如何结束进程?

vb如何结束进程?,第1张

分类: 电脑/网络 >>程序设计 >>其他编程语言

问题描述:

我想要编一个监控进程(比如iexplore.exe)这个进程,每秒钟检测一次,发现这个进程马上结束掉这个进程,请问各位,这个代码应该怎么编写。

解析:

这个问题可以这样的解决:vb6下编译通过的。

Private Const PROCESS_TERMINATE = &H1

Private Declare Function OpenProcess Lib "kernel32" (ByVal dwDesiredAccess As Long, ByVal bInheritHandle As Long, ByVal dwProcessId As Long) As Long

Private Declare Function CloseHandle Lib "kernel32" (ByVal hObject As Long) As Long

Private Declare Function TerminateProcess Lib "kernel32" (ByVal hProcess As Long, ByVal uExitCode As Long) As Long

Private Declare Sub Sleep Lib "kernel32" (ByVal dwMilliseconds As Long)

Private Sub Timer1_Timer()

Dim hProcess As Long

hProcess = Shell("notepad.exe", vbNormalFocus) '取得id

Sleep (1000)

hProcess = OpenProcess(PROCESS_TERMINATE, 0&, hProcess) '取得句柄

TerminateProcess hProcess, 0&'结束进程

Timer1.Enabled = False

CloseHandle hProcess

End Sub

注意:timer1的interval的属性设置为1000,

:notepad.exe是随便写的,你可以改成你要的监控进程.

:所有的vb的api函数都在vb6的apiview工具之中可以得到!

在需要的地方加

End

直接退出程序

或者

System (此处填进程返回值)

Stop

都行

当然,最好考虑关闭自己的所有窗口 使用Unload Me'点自己的关闭按钮。

如果你不需要窗体,删掉他新建模块用

Sub Main()

'...

End Sub

执行完自动退出。

当然 调ExitProcess也是个办法,但是你真的希望连着VB的编辑器一起退出吗?

如果你不需要VB的编辑器,干脆把你的代码编译成EXE,想用多少遍用多少遍,还快。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/12058417.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-20
下一篇 2023-05-20

发表评论

登录后才能评论

评论列表(0条)

保存