軟糖來(lái)回答羅:通過(guò)System.Diagnostics命名空間下的Process類來(lái)關(guān)閉程序的進(jìn)程
讓客戶滿意是我們工作的目標(biāo),不斷超越客戶的期望值來(lái)自于我們對(duì)這個(gè)行業(yè)的熱愛(ài)。我們立志把好的技術(shù)通過(guò)有效、簡(jiǎn)單的方式提供給客戶,將通過(guò)不懈努力成為客戶在信息化領(lǐng)域值得信任、有價(jià)值的長(zhǎng)期合作伙伴,公司提供的服務(wù)項(xiàng)目有:國(guó)際域名空間、網(wǎng)頁(yè)空間、營(yíng)銷軟件、網(wǎng)站建設(shè)、花都網(wǎng)站維護(hù)、網(wǎng)站推廣。
Dim?進(jìn)程集合?=?Process.GetProcessesByName("進(jìn)程名稱")
For?Each?進(jìn)程?In?進(jìn)程集合
進(jìn)程.Kill()
'進(jìn)程.Close()?'或者使用關(guān)閉
Next
也可以先獲取所有進(jìn)程,再來(lái)判斷這些進(jìn)程的名稱ProcessName
Dim?獲取本地所有進(jìn)程?=?Process.GetProcesses()
For?Each?進(jìn)程?In?獲取本地所有進(jìn)程
If?進(jìn)程.ProcessName?=?"explorer.exe"?Then?進(jìn)程.Kill()
Next
主窗體代碼調(diào)用Me.close不就可以了嗎?或者在任意代碼處調(diào)用Application.Exit()。如果不起作用的話是因?yàn)槟阍诖绑w關(guān)閉的事件中調(diào)用了e.Handle=True
好像不難吧?
我放進(jìn)了Button1的Click事件里。
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
On Error GoTo Errmessages '在做系統(tǒng)操作時(shí)加排錯(cuò)標(biāo)簽是個(gè)好習(xí)慣
Dim TargetName As String = "ibmdict" '存儲(chǔ)進(jìn)程名為文本型,注:進(jìn)程名不加擴(kuò)展名
Dim TargetKill() As Process = Process.GetProcessesByName(TargetName) '從進(jìn)程名獲取進(jìn)程
Dim TargetPath As String '存儲(chǔ)進(jìn)程路徑為文本型
If TargetKill.Length 1 Then '判斷進(jìn)程名的數(shù)量,如果同名進(jìn)程數(shù)量在2個(gè)以上,用For循環(huán)關(guān)閉進(jìn)程。
For i = 0 To TargetKill.Length - 1
TargetPath = TargetKill(i).MainModule.FileName
TargetKill(i).Kill()
Next
ElseIf TargetKill.Length = 0 Then '判斷進(jìn)程名的數(shù)量,沒(méi)有發(fā)現(xiàn)進(jìn)程直接彈窗。不需要的,可直接刪掉該If子句
MsgBox("沒(méi)有發(fā)現(xiàn)進(jìn)程!")
Exit Sub
ElseIf TargetKill.Length = 1 Then '判斷進(jìn)程名的數(shù)量,如果只有一個(gè),就不用For循環(huán)
TargetKill(0).Kill()
End If
MsgBox("已終止" TargetKill.Length "個(gè)進(jìn)程") '彈窗提示已終止多少個(gè)進(jìn)程
Errmessages: ‘定義排錯(cuò)標(biāo)簽
If Err.Description Nothing Then ’判斷有無(wú)錯(cuò)誤,如果有,則 ↓
MsgBox(Err.Description) '當(dāng)出現(xiàn)錯(cuò)誤時(shí),彈窗提示
End If
End Sub
可根據(jù)需要自行修改,這個(gè)備注夠完善了吧?不會(huì)的再Hi我。