Kirjautuminen

Haku

Tehtävät

Keskustelu: Ohjelmointikysymykset: VB.NET: [vb2008] ohjelman uudelleenkäynnistys

jokke568 [05.04.2010 21:36:12]

#

Hei

Pystyykö ohjelman laittaa sammumaan ja sitten uudelleen käynnistymään koodilla?

Jos pystyy niin miten onnistuisi?

Jokke

Grez [05.04.2010 22:25:37]

#

Yksinkertaisin keino olisi varmaan käynnistää toinen ohjelma, joka käynnistää sen ensimmäisen ohjelman uudelleen tietyn ajan kuluttua.

Toinen vaihtoehto olisi käyttää käyttöjärjestelmän ajastettuja toimintoja, mutta tämä tietysti hieman vaihtelee käyttöjärjestelmittäin. Jos taas riittää, että se käynnistyisi uudelleen esim. seuraavalla kirjauksella, niin voisi käyttää esim. Windowsin RunOnce menettelyä.

groovyb [06.04.2010 22:40:06]

#

Private Sub Form1_FormClosed(ByVal sender As Object, ByVal e As System.Windows.Forms.FormClosedEventArgs) Handles Me.FormClosed


	Dim MyProcess As New Process()

	MyProcess.StartInfo.WorkingDirectory = "hakemisto"
	MyProcess.StartInfo.FileName = "Tiedostonimi.exe"
	MyProcess.Start()

End Sub

*edit vähän kannattaa soveltaa kuitenkin, ettei ole kiva looppi päällä kuten itsellä testatessa pamahti päälle. kyllä ajattelemattomuus on kaunista :)

tämä koski jos haluat sammuttaa oman ohjelmasi, ja käynnistää sen uudelleen.

tässä esimerkki "vieraan" prosessin sammuttamisesta:

Dim myProcesses As Process() = Process.GetProcessesByName("acrobat") 'tässä tapauksessa haetaan acrobat readeriä
Dim myProcess As Process
For Each myProcess In myProcesses
If myProcess.MainWindowTitle = "" Then myProcess.Kill()
Next myProcess

eiköhän noita soveltamalla onnistu

jokke568 [08.04.2010 00:29:31]

#

Kiitos groovyb ja Grez

Ohjelmani kaatuu ja kysyy lähetetäänkö virheilmoitus microsoftille. En osaa paikantaa vikaa(ainakaan vielä...). Ajattelin tehdä rinnalle toisen ohjelman joka vahtii onko ohjelma tehnyt aikaleiman tiedostoon, jos ei ole niin tuhoaa prosessin ja käynnistää ohjelman uudelleen.

groovyb vastasit tulevaan kysymykseeni, suuri kiitos. Esimerkeilläsi pääsen soveltamaan tarvettani.

Vastaus

Aihe on jo aika vanha, joten et voi enää vastata siihen.

Tietoa sivustosta