Обработка исключений в Gtk#
От: 4ybaka Россия http://4ybaka.blogspot.com/
Дата: 13.09.09 20:35
Оценка:
Есть начальное окно Gtk.Window. Из него по кнопке создается еще одно:
Editor editor = new Editor();

При этом конструктор окна выглядит так:
        public Editor() : 
                base(Gtk.WindowType.Toplevel)
        {
            this.Build();
        }

Оно отрисовывается и все хорошо. Однако при возникновении в нем исключения оно не попадает в блок try/catch, расположенный в методе Main(). Т.е. складывается такое впечатление, что оно вываеливается в каком-то другом потоке, но где тогда ставить этот блок? Я понимаю, что все опоясывать в try не стоит, но это нужно для тестирования.
Re: Обработка исключений в Gtk#
От: Gremlin2 http://www.fb2library.net/
Дата: 13.09.09 20:43
Оценка:
Здравствуйте, 4ybaka, Вы писали:

4>Оно отрисовывается и все хорошо. Однако при возникновении в нем исключения оно не попадает в блок try/catch, расположенный в методе Main(). Т.е. складывается такое впечатление, что оно вываеливается в каком-то другом потоке, но где тогда ставить этот блок?


Может тут:

Application.ThreadException
Re: Обработка исключений в Gtk#
От: TK Лес кывт.рф
Дата: 14.09.09 06:22
Оценка:
Здравствуйте, 4ybaka, Вы писали:

4>Оно отрисовывается и все хорошо. Однако при возникновении в нем исключения оно не попадает в блок try/catch, расположенный в методе Main(). Т.е. складывается такое впечатление, что оно вываеливается в каком-то другом потоке, но где тогда ставить этот блок? Я понимаю, что все опоясывать в try не стоит, но это нужно для тестирования.


Посмотрите на StackTrace исключения или установите в отладчике остановку при выбросе исключения.
Если у Вас нет паранойи, то это еще не значит, что они за Вами не следят.
Re[2]: Обработка исключений в Gtk#
От: 4ybaka Россия http://4ybaka.blogspot.com/
Дата: 14.09.09 06:37
Оценка:
Здравствуйте, Gremlin2, Вы писали:

G>Может тут:


G>
G>Application.ThreadException 
G>


Нет, это для WinForms только.
Re: Обработка исключений в Gtk#
От: 4ybaka Россия http://4ybaka.blogspot.com/
Дата: 14.09.09 06:39
Оценка:
Нашел таки событие для обработки не пойманных исключений: GLib.ExceptionManager.UnhandledException.
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.