Avatar billede mnc Nybegynder
25. januar 2007 - 10:02 Der er 2 kommentarer og
1 løsning

Process.Exited bliver ikke triggered.

Jeg har et program som dræber en process efter et ønsket tidsinterval. Jeg har smidt en Exited event ind, da programmet gerne må gå væk hvis der alligevel ikke er brug for det.
Når jeg har fundet den rigtige process (i mit datagridview, hvor jeg sætter _process til det valgte objekt med Selection_Changed) tester jeg om processen findes idet jeg vil starte nedtællingen, og jeg tilføjer eventen (og starter min timer) hvis jeg får true tilbage.
I min timer har jeg, udover et check om jeg er nået til enden af min nedtælling, også en visuel nedtælling i form af this.Text på min winform. Når min timer_tick event bliver triggered (interval på 1000 = 1 sek) opdateres this.Text, så jeg kan se om timeren kører. :)
Her kommer koden omhandlende min Exited event.

_process.Exited += new EventHandler(Process_Exited);

//Min Process_Exited ser således ud:
timerKill.Stop();
DialogResult dr = MessageBox.Show("Process was killed without my interference. Exit me?", "Process Gone", MessageBoxButtons.YesNo, MessageBoxIcon.Question);
if (dr == DialogResult.Yes)
  this.Close();

Problemet er så bare at jeg aldrig når til min event, og jeg har ingen idé om hvorfor.

Jeg tester ved at åbne en Notepad instans, starte min applikation (altså starte min timer), og så lukke notepad. Herefter tæller den lystigt videre, som om intet var hændt.
Avatar billede hmortensen Nybegynder
25. januar 2007 - 11:27 #1
Når du instansiere dit Process object, så sæt flg. property.
_process.EnableRaisingEvents = true;
Avatar billede mnc Nybegynder
25. januar 2007 - 11:46 #2
Spiller perfekt, smid et svar
Avatar billede hmortensen Nybegynder
25. januar 2007 - 11:59 #3
Svar :)
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
IT-kurser om Microsoft 365, sikkerhed, personlig vækst, udvikling, digital markedsføring, grafisk design, SAP og forretningsanalyse.

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester