重庆分公司,新征程启航
为企业提供网站建设、域名注册、服务器等服务
软糖来回答罗:通过System.Diagnostics命名空间下的Process类来关闭程序的进程
成都创新互联专注于临泽网站建设服务及定制,我们拥有丰富的企业做网站经验。 热诚为您提供临泽营销型网站建设,临泽网站制作、临泽网页设计、临泽网站官网定制、微信小程序服务,打造临泽网络公司原创品牌,更为您提供临泽网站排名全网营销落地服务。
Dim 进程集合 = Process.GetProcessesByName("进程名称")
For Each 进程 In 进程集合
进程.Kill()
'进程.Close() '或者使用关闭
Next
也可以先获取所有进程,再来判断这些进程的名称ProcessName
Dim 获取本地所有进程 = Process.GetProcesses()
For Each 进程 In 获取本地所有进程
If 进程.ProcessName = "explorer.exe" Then 进程.Kill()
Next
好像不难吧?
我放进了Button1的Click事件里。
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
On Error GoTo Errmessages '在做系统操作时加排错标签是个好习惯
Dim TargetName As String = "ibmdict" '存储进程名为文本型,注:进程名不加扩展名
Dim TargetKill() As Process = Process.GetProcessesByName(TargetName) '从进程名获取进程
Dim TargetPath As String '存储进程路径为文本型
If TargetKill.Length 1 Then '判断进程名的数量,如果同名进程数量在2个以上,用For循环关闭进程。
For i = 0 To TargetKill.Length - 1
TargetPath = TargetKill(i).MainModule.FileName
TargetKill(i).Kill()
Next
ElseIf TargetKill.Length = 0 Then '判断进程名的数量,没有发现进程直接弹窗。不需要的,可直接删掉该If子句
MsgBox("没有发现进程!")
Exit Sub
ElseIf TargetKill.Length = 1 Then '判断进程名的数量,如果只有一个,就不用For循环
TargetKill(0).Kill()
End If
MsgBox("已终止" TargetKill.Length "个进程") '弹窗提示已终止多少个进程
Errmessages: ‘定义排错标签
If Err.Description Nothing Then ’判断有无错误,如果有,则 ↓
MsgBox(Err.Description) '当出现错误时,弹窗提示
End If
End Sub
可根据需要自行修改,这个备注够完善了吧?不会的再Hi我。
可以参考下面的两种参考方法:
第一种:用cmd中的taskkill结束程序
shell ”cmd/c taskkill /f /im 你的进程名.exe“
第二种:(WIN7)以下的电脑可以使用,用ntsd结束程序
shell ”cmd/c ntsd -c q -pn 用户的进程名.exe“
扩展资料:
参考语句
For Each...Next 语句: 对于数组或集合中的每一个元素,重复一组语句。
FormatDateTime 函数: 返回格式化为日期或时间的表达式。
FormatNumber 函数: 返回格式化为数的表达式。
Function 语句: 声明形成 Function 过程体的名称、参数和代码。
GetObject 函数: 从文件返回对“自动”对象的访问。
参考资料来源:百度百科-Visual Basic
主窗体代码调用Me.close不就可以了吗?或者在任意代码处调用Application.Exit()。如果不起作用的话是因为你在窗体关闭的事件中调用了e.Handle=True