現(xiàn)在多是在form_load里驗證的,你打開第二次也只是暫時的,后面讓他關(guān)閉就行了. form_load之前windows form就已經(jīng)生成... 把你程序讀入內(nèi)存就算這個程序已經(jīng)被打開開始執(zhí)行了...不管你放那里都是會打開第二次的... 要讓他結(jié)束直接用Application.Exit()就行了.
創(chuàng)新互聯(lián)建站是一家集網(wǎng)站建設(shè),嵐皋企業(yè)網(wǎng)站建設(shè),嵐皋品牌網(wǎng)站建設(shè),網(wǎng)站定制,嵐皋網(wǎng)站建設(shè)報價,網(wǎng)絡(luò)營銷,網(wǎng)絡(luò)優(yōu)化,嵐皋網(wǎng)站推廣為一體的創(chuàng)新建站企業(yè),幫助傳統(tǒng)企業(yè)提升企業(yè)形象加強(qiáng)企業(yè)競爭力。可充分滿足這一群體相比中小企業(yè)更為豐富、高端、多元的互聯(lián)網(wǎng)需求。同時我們時刻保持專業(yè)、時尚、前沿,時刻以成就客戶成長自我,堅持不斷學(xué)習(xí)、思考、沉淀、凈化自己,讓我們?yōu)楦嗟钠髽I(yè)打造出實用型網(wǎng)站。
首先這個要看的子函數(shù)執(zhí)行的情況了,比如你子函數(shù)要8秒才能執(zhí)行完成,你1秒鐘執(zhí)行一次,到時會有好幾個子函數(shù)在運行,肯定會影響程序運行的。你要調(diào)整時間才能讓子函數(shù)不影響主程序;
再一個,如果不想影響主程序,你可以再建一個程序,專門用來執(zhí)行子函數(shù),然后讓那個程序用定時器每秒執(zhí)行一次子函數(shù),這樣就不會影響主程序;
Private?Sub?Form1_Load(ByVal?sender?As?System.Object,?ByVal?e?As?System.EventArgs)?Handles?MyBase.Load
If?UBound(Diagnostics.Process.GetProcessesByName(Diagnostics.Process.GetCurrentProcess.ProcessName))??0?Then
MessageBox.Show("程序已經(jīng)運行了")
End
End?If
End?Sub
//一部分指令……
int?duration?=?1000;?//設(shè)定進(jìn)程掛起時間,單位毫秒
System.Threading.Thread.Sleep(duration);?掛起當(dāng)前進(jìn)程
//另一部分指令……
如果你用控制臺應(yīng)用程序,這樣就可以了。如果你用窗體應(yīng)用程序且在窗體主線程下運行,則需要用到計時器或多線程等。