Better error handling; use process.Kill()