Bon ho risolto il problema grazie a tutti un'ultima cosa (anche se OT): uso System.Diagnostics.Process.Start() per avviare i vari processi indicati dall'utente. Se pero' un utente mette il nome di un programma inesistente il programma crasha, come faccio a gestire questa eccezione per esempio mostrando una finestrina di errore?