Springen naar inhoud


- - - - -

Processkill

Process task manager wpf datagrid

  • Log in a.u.b. om te beantwoorden
Er zijn 4 reacties in dit onderwerp

#1 Gwen

Gwen

    Starting Developer

  • Leden
  • 21 berichten
    Laatst bezocht 23 aug 2018 20:08

Geplaatst op 24 juni 2012 - 11:02

Ik probeer de draad weer op te pikken qua programmeren.
Daarvoor heb ik voor mezelf een aantal kleine oefeningen opgesteld om weer mee in roulatie te raken.

Dit programma vraagt een lijst met actieve processen op. Per process wordt er een appart object gemaakt, deze worden verzameld in een lijst. Deze lijst wordt op zijn beurt gebruikt om een datagrid te vullen op mijn formulier.

De gebruiker kan dan één of meerdere processen selecteren die hij wil stoppen.

Het form design werd ook aangepast, dit is tevens mijn eerste kennismaking met WPF.

Het is dus een basic task manager geworden.

In bijlage het project en uiteraard een screenshot :)

Bijlage  ProcessKillScreenshot.png   75,75K   71 downloads

Bijlage  ProcessKill.zip   142,82K   16 downloads

#2 pascalbianca

pascalbianca

    Webmaster/Admin

  • Webmaster
  • 4382 berichten
    Laatst bezocht 19 sep 2018 06:40
  • LocatieSusteren, Nederland, Midden Limburg.
Inzender

Geplaatst op 24 juni 2012 - 12:48

Dat ziet er netjes uit!

#3 Eviltwin

Eviltwin

    Professional Developer

  • Leden
  • PipPipPipPip
  • 299 berichten
    Laatst bezocht 09 mei 2014 15:22
  • LocatieKampen, Nederland

Geplaatst op 25 juni 2012 - 21:54

Ziet er zeker netjes uit,

Zelf zal ik er overigens voor kiezen om de processen te laden tijden het opstarten.

Overigens de code even gedownload :-P  kan altijd een keer van pas komen, Thanks 8-)

Groeten,

Eviltwin

#4 Vozzie

Vozzie

    Moderator

  • Leden
  • PipPipPipPipPipPipPip
  • 1855 berichten
    Laatst bezocht 12 jul 2017 13:15
Inzender

Geplaatst op 24 september 2012 - 19:35

Hy Gwen,

Ik zie dat je het process stopt door de Kill method. Misschien is het netter zijn te kijken of het process een raam heeft (process.MainWIndowHandle) en dan eerste met een timeout proberen het process te sluiten via de CloseMainWindow en WaitForExit(timeout) method. Indien het programma niet gesloten dan pas de Kill te gebruiken...

Code:
public void StopProcess(MijnProcess proc)
{
	//stop het proces met de overeenstemmende process ID
	Process StopProc = Process.GetProcessById(proc.ProcessPID);
	if (StopProc.MainWindowHandle != IntPtr.Zero)
	{
		StopProc.CloseMainWindow();
		if (!StopProc.WaitForExit(5000))
		{
			StopProc.Kill();
		}
	}
	else
	{
		StopProc.Kill();
	}
 }

Voor de rest netjes gedaan hoor,...

Groetjes

#5 Gwen

Gwen

    Starting Developer

  • Leden
  • 21 berichten
    Laatst bezocht 23 aug 2018 20:08

Geplaatst op 01 november 2012 - 18:28

Bedankt voor de tip  Vozzie. :)





Ook met taq Process, task manager, wpf, datagrid voorzien

0 gebruiker(s) lezen dit onderwerp

0 lid(leden), 0 bezoeker(s), 0 anonieme gebruikers

Inloggen


Untitled 1

Met dank aan Jürgen voor de jarenlange inzet van visualbasic.be (anno dec 2000)
Met dank aan Mike en Ronneke voor de jarenlange inzet van vbib.be (anno dec 2010)
Met dank aan PascalBianca voor de jarenlange inzet van vbib.be (anno dec 2016)