/// ------------------------------------------------------------------------------------
		/// <summary>
		/// Catches and displays otherwise unhandled exception, especially those that happen
		/// during startup of the application before we show our main window.
		/// </summary>
		/// ------------------------------------------------------------------------------------
		protected new void HandleUnhandledException(object sender, UnhandledExceptionEventArgs e)
		{
			if (!GetShouldHandleException(sender, e.ExceptionObject as Exception))
				return;

			if (UseFallback)
			{
				if (Program.RunningHarvesterMode)
					Console.WriteLine("Uncaught Exception: {0}", e.ExceptionObject);
				else
					_fallbackHandler.HandleUnhandledException(sender, e);
				return;
			}

			if (e.ExceptionObject is Exception)
				DisplayError(e.ExceptionObject as Exception);
			else
				DisplayError(new ApplicationException("Got unknown exception"));
		}
        /// ------------------------------------------------------------------------------------
        /// <summary>
        /// Catches and displays otherwise unhandled exception, especially those that happen
        /// during startup of the application before we show our main window.
        /// </summary>
        /// ------------------------------------------------------------------------------------
        protected void HandleUnhandledException(object sender, UnhandledExceptionEventArgs e)
        {
            if (!GetShouldHandleException(sender, e.ExceptionObject as Exception))
            {
                return;
            }

            if (UseFallback)
            {
                _fallbackHandler.HandleUnhandledException(sender, e);
                return;
            }

            if (e.ExceptionObject is Exception)
            {
                DisplayError(e.ExceptionObject as Exception);
            }
            else
            {
                DisplayError(new ApplicationException("Got unknown exception"));
            }
        }