static void Main() { try { using (var game = new LostSoulGame()) game.Run(); } catch (Exception e) { string stackfile = System.IO.Path.GetTempPath() + "lostsoul_" + Guid.NewGuid().ToString(); System.IO.StreamWriter file = new System.IO.StreamWriter(stackfile); WriteExceptionsUntilNoMoreInner(e, file); file.Close(); throw e; } }