Ho notato che molta gente ancora consiglia di utilizzare Process.GetProcessesByName() anziche' l'uso di un Mutex per creare un applicazione single instance, senza sapere che la classe Process utilizza i performance counters, il perche', e quali problemi possono derivare da un loro uso “indiretto” attraverso Process sono indicati qui, tra questi:
“Performance information is not available to a non-admin account, which is not in the Performance Counter Users Group on Windows Server 2003. So the Process class could not get process performance information in this case.“
La buona notizia la trovate nella stessa pagina dove viene indicato che nel Framework 2.0, per i processi locali, la classe Process non dipendera' piu' dai performance counters.
Questa e altre interessanti info le trovate nelle System.Diagnostics.Process FAQ