Обработка исключений
От: maxus78  
Дата: 20.09.06 13:23
Оценка:
Добрый день, уважаемые коллеги.

Вопрос: есть код:


try
{
mySqlConnection.Open();
}
catch(Exception e)
{
throw new FatalCommonException(e);
}


Соответственно, в FatalCommonException должна вылезать форма с текстом ошибки и предложением отправить все это дело по email в службу поддержки. Так вот, после того, как форма вылезает, основная программа продолжает пытаться открыть SQLconnection (или что-то еще) и подвешивает все на свете. ВОпрос: как остановить выполнение основной программы после появления окна с описанием ошибки (ну, или после возникновения FatalCommonException)?
Re: Обработка исключений
От: Lloyd Россия  
Дата: 20.09.06 13:27
Оценка:
Здравствуйте, maxus78, Вы писали:

M>Соответственно, в FatalCommonException должна вылезать форма с текстом ошибки и предложением отправить все это дело по email в службу поддержки. Так вот, после того, как форма вылезает, основная программа продолжает пытаться открыть SQLconnection (или что-то еще) и подвешивает все на свете. ВОпрос: как остановить выполнение основной программы после появления окна с описанием ошибки (ну, или после возникновения FatalCommonException)?


Application.Exit()
... << RSDN@Home 1.1.4 stable SR1 rev. 568>>
Re[2]: Обработка исключений
От: maxus78  
Дата: 20.09.06 13:29
Оценка:
Здравствуйте, Lloyd, Вы писали:

Application.Exit() не срабатывает, ибо окно сообщения об ошибке модальное (form.ShowDialog()).

L>Application.Exit()
Re[3]: Обработка исключений
От: Lloyd Россия  
Дата: 20.09.06 13:36
Оценка:
Здравствуйте, maxus78, Вы писали:

M>Application.Exit() не срабатывает, ибо окно сообщения об ошибке модальное (form.ShowDialog()).


Ну так вызывай его после ShowDialog-а.
... << RSDN@Home 1.1.4 stable SR1 rev. 568>>
Re[4]: Обработка исключений
От: maxus78  
Дата: 20.09.06 13:47
Оценка:
Здравствуйте, Lloyd, Вы писали:

Я и вызываю его после ShowDialog(). Так вот пока не будет какого-нить form.DialogResult, Application.Exit() вызван не будет (что вполне понятно, иначе зачем модальность). А в это время по таймеру у меня основная программа что-то делать пытается (опять пытается установить SqlConnection).

L>Здравствуйте, maxus78, Вы писали:


M>>Application.Exit() не срабатывает, ибо окно сообщения об ошибке модальное (form.ShowDialog()).


L>Ну так вызывай его после ShowDialog-а.
Re[5]: Обработка исключений
От: Lloyd Россия  
Дата: 20.09.06 14:03
Оценка:
Здравствуйте, maxus78, Вы писали:

M>Здравствуйте, Lloyd, Вы писали:


M>Я и вызываю его после ShowDialog(). Так вот пока не будет какого-нить form.DialogResult, Application.Exit() вызван не будет (что вполне понятно, иначе зачем модальность). А в это время по таймеру у меня основная программа что-то делать пытается (опять пытается установить SqlConnection).


Ну раз программа твоя, то сделай так, чтобы она в случае ошибки останавливала таймер.

P.S. Пожалейста, когда отвечаешь, пиши текст твоего сообщения после слов собеседника.
... << RSDN@Home 1.1.4 stable SR1 rev. 568>>
Re[6]: Обработка исключений
От: maxus78  
Дата: 20.09.06 14:29
Оценка:
Здравствуйте, Lloyd, Вы писали:

L>Здравствуйте, maxus78, Вы писали:


M>>Здравствуйте, Lloyd, Вы писали:


M>>Я и вызываю его после ShowDialog(). Так вот пока не будет какого-нить form.DialogResult, Application.Exit() вызван не будет (что вполне понятно, иначе зачем модальность). А в это время по таймеру у меня основная программа что-то делать пытается (опять пытается установить SqlConnection).


L>Ну раз программа твоя, то сделай так, чтобы она в случае ошибки останавливала таймер.


L>P.S. Пожалейста, когда отвечаешь, пиши текст твоего сообщения после слов собеседника.


Так лучче?

Так у меня там таймеров — вагон Все их отлавливать — целая мегазадача...
Re[7]: Обработка исключений
От: Lloyd Россия  
Дата: 20.09.06 14:33
Оценка:
Здравствуйте, maxus78, Вы писали:

M>Так у меня там таймеров — вагон Все их отлавливать — целая мегазадача...


А зачем тебе вагон таймеров?
... << RSDN@Home 1.1.4 stable SR1 rev. 568>>
Re[7]: Обработка исключений
От: Аноним  
Дата: 20.09.06 15:27
Оценка:
Здравствуйте, maxus78, Вы писали:

M>Так у меня там таймеров — вагон Все их отлавливать — целая мегазадача...


Слушай, ну не серьёзно это как-то!
Во-первых, вагон таймеров пахнет кривой архитектурой приложения.
Во-вторых, что значит "проблема отлавливать таймеры"? Timer.Stop() или типо того + критические секции а-ля lock (...) решают подобную проблему на ура.
Re[7]: Обработка исключений
От: TK Лес кывт.рф
Дата: 20.09.06 15:56
Оценка: 1 (1)
Hello, "maxus78"

> L>P.S. Пожалейста, когда отвечаешь, пиши текст твоего сообщения после слов

> собеседника.
> Так лучче?
>

Лучше. Но, избыточное цитирование тоже стоит удалять.
Posted via RSDN NNTP Server 2.0
Если у Вас нет паранойи, то это еще не значит, что они за Вами не следят.
Re[8]: Обработка исключений
От: maxus78  
Дата: 21.09.06 09:11
Оценка:
Здравствуйте, Аноним, Вы писали:


А>Слушай, ну не серьёзно это как-то!

А>Во-первых, вагон таймеров пахнет кривой архитектурой приложения.

Я и не претендую на ровность архитектуры Да и насчет вагона я погрячился, когда посчитал. Актуальный-то один остался. Что касается Timer.Stop() надо попробовать Может, и получится.
Re[4]: Обработка исключений
От: Аноним  
Дата: 20.09.06 14:05
Оценка:
Перед вызовом ShowDialog() что мешает убить таймер?
-----
Нулевое оформления постов благодаря Opere.


данное сообщение получено с www.gotdotnet.ru
ссылка на оригинальное сообщение
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.