Very simple. Just loop through the processes list and check the name of the current process:
//don't forget: using System.Diagnostics;
Process[] p = Process.GetProcesses();//system processes in an array
for (int i = 0; i < p.Length; i++)

                if (p[i].ProcessName == "calc")//checkcurrent process name
                    //we got it
                    MessageBox.Show("Calculator process found - we will kill it after you press ok");
                    p[i].Kill();//this is the process
        catch (Exception ex)

Their name does not contain the *.exe extension. Good luck :).


Hi I'm writing a client/server remote viewer application where screenshots of the desktop are sent across the network over a socket. I'd like to reduce the size of the transfer by getting [I]the difference between the two images and then sending the difference[/I]. The difference would be at least a rectangle, no? So I need to locate where the change is and send only the "update rectangle" to the client.
[B]How can I do that?[/B] I need performance... (can't loop through pixels... too much time consuming)

Votes + Comments
very helpful thread!!!