matar un proceso en c#

En realidad este post es continuación de los anteriores, pero como ya aburre hablar del acelerómetro y demas, cambio el enfoque. Recientemente he formateado el ordenador (es lo que tiene jugar con la tabla de particiones sin prestar mucha atención…) y ya puestos he decidido otra aproximación para programar el botón de giro de pantalla. La idea es que ahora uso el botón para pausar o reanudar el giro automático (mediante el acelerómetro) de la pantalla del portatil, es decir, que en modo tablet, la pantalla gira segun la muevo, hasta que le doy al botón, entonces ya no gira hasta que vuelva a darle.
Para ello simplemente, lo que hago es mirar si el proceso esta en memoria. Si está, lo mato, y si no esta lo lanzo. Un codigo muy sencillo y bastante efectivo.
Para ello necesitamos acceso a la clase process , que está en System.Diagnostics, y en concreto 3 de sus metodos ,GetProcessesByNameKill y Start (no hace falta explicarlos mucho,¿ no?)

Así , en nuestro caso, para matar/lanzar el porceso SDTabletPC,  el codigo quedaría:

Process[] pArray = Process.GetProcessesByName("SDtabletPC");
if (pArray.Length == 0)
{
Process.Start("C:\\Program Files (x86)\\STMicroelectronics\\STScreenDetection\\SDTabletPC.exe");
}
else
{
pArray[0].Kill();
}

Responder

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Cerrar sesión / Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Cerrar sesión / Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Cerrar sesión / Cambiar )

Google+ photo

Estás comentando usando tu cuenta de Google+. Cerrar sesión / Cambiar )

Conectando a %s




Enlaces en del.icio.us

Fotos en Flickr



patos0028

patos0027

patos0022

Más fotos

A %d blogueros les gusta esto: