Я вижу 2 возможных решения
1) способ, предложенный Tomlog, при наличии двух мониторов процессов. (Плохой путь)
2) Сделайте так, чтобы ваше приложение знало, что оно аварийно завершает работу, и затем сделайте что-нибудь (Вы можете, вероятно, не перезапустить его, но, возможно, запустить другое приложение, которое сделает это) *
Я бы порекомендовал использовать версию 2 просто потому, что мобильные телефоны имеют ограниченные ресурсы, и порождение программы, которая ничего не делает, кроме проверки, работает ли другая, кажется плохой практикой, особенно на телефоне.
[MTAThread]
static void Main()
{
AppDomain CurrentDomain = AppDomain.CurrentDomain;
CurrentDomain.UnhandledException += new UnhandledExceptionEventHandler(OnUnhandledException);
Application.Run(new MainWindow());
}
static void OnUnhandledException(Object sender, UnhandledExceptionEventArgs e)
{
Exception ex = (Exception)e.ExceptionObject;
}