軟糖來回答羅:通過System.Diagnostics命名空間下的Process類來關(guān)閉程序的進程
目前創(chuàng)新互聯(lián)公司已為上千家的企業(yè)提供了網(wǎng)站建設(shè)、域名、網(wǎng)絡(luò)空間、綿陽服務(wù)器托管、企業(yè)網(wǎng)站設(shè)計、進賢網(wǎng)站維護等服務(wù),公司將堅持客戶導(dǎo)向、應(yīng)用為本的策略,正道將秉承"和諧、參與、激情"的文化,與客戶和合作伙伴齊心協(xié)力一起成長,共同發(fā)展。
Dim?進程集合?=?Process.GetProcessesByName("進程名稱")
For?Each?進程?In?進程集合
進程.Kill()
'進程.Close()?'或者使用關(guān)閉
Next
也可以先獲取所有進程,再來判斷這些進程的名稱ProcessName
Dim?獲取本地所有進程?=?Process.GetProcesses()
For?Each?進程?In?獲取本地所有進程
If?進程.ProcessName?=?"explorer.exe"?Then?進程.Kill()
Next
如果這個窗體是主窗體的話,你只能隱藏,因為主窗體關(guān)閉的話程序就退出了。
如果不是主窗體,可以用Form1.Close來關(guān)閉。
如果實在是想關(guān)閉,就得把程序啟動設(shè)為sub
main而不是form。
再由sub
main來啟動窗體,這樣就沒有主窗體了。
這樣的話你就不要直接把子窗口show出來,先在父窗口創(chuàng)建一個子窗口對象的變量,通過實例化該變量達到創(chuàng)建子窗口的目的,然后在下次又要打開子窗口時也可以通過該變量關(guān)閉原有的子窗口
示例代碼如下(假設(shè)Form1為父窗口,F(xiàn)orm2為子窗口):
Form1的代碼:
Public
Class
Form1
Dim
nform
As
Form2
=
Nothing
Private
Sub
Button1_Click(ByVal
sender
As
System.Object,
ByVal
e
As
System.EventArgs)
Handles
Button1.Click
If
nform
IsNot
Nothing
Then
nform.Close()
nform.Dispose()
End
If
nform
=
New
Form2
nform.Show()
Me.Hide()
End
Sub
End
Class
通過nform變量,你可以很輕易就處理掉原來已經(jīng)打開但隱藏著的子窗口了