Не вижу MessageBox - PullRequest
       27

Не вижу MessageBox

2 голосов
/ 17 сентября 2010

Почему я не вижу MessageBox с деталями исключений, когда я запускаю свою программу, выполняя exe fine в папке отладки bin?

Я вижу исключение, когда я отлаживаю (запускаю) программу из Visual Studio.

[STAThread]
static void Main()
{
    try
    {
        Application.EnableVisualStyles();
        Application.SetCompatibleTextRenderingDefault(false);
        Application.Run(new Form1());
    }
    catch (Exception ex)
    {
        if (MessageBox.Show(
            string.Format("There were unhandeled exceptions. Would you like to continue using this program?"),
            "Fatal Error",
            MessageBoxButtons.YesNo,
            MessageBoxIcon.Error) == System.Windows.Forms.DialogResult.No)
                Application.Exit();
    }
}

Редактировать
Вот код, который генерирует исключение:

private void button1_Click(object sender, EventArgs e) {
    int num = 1;
    num = num / (num - num);
}

1 Ответ

3 голосов
/ 17 сентября 2010

Добавьте эту строку:

try 
{
    Application.SetUnhandledExceptionMode(UnhandledExceptionMode.ThrowException);
    ...

Видимо, значение по умолчанию отличается при отладке.Я не знаю подробностей об этом.

Также обратите внимание, что ваш if(...) Application.Exit(); здесь не очень полезен, и не должен.
Не пытайтесь перезапустить или что-то еще.

...