Форум программистов, компьютерный форум, киберфорум
C# для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.86/7: Рейтинг темы: голосов - 7, средняя оценка - 4.86
Alvin Seville
 Аватар для Соколиный глаз
343 / 273 / 134
Регистрация: 25.07.2014
Сообщений: 4,537
Записей в блоге: 22

Как узнать внутри чего было выброшено исключение?

24.03.2019, 05:37. Показов 1439. Ответов 6
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Как узнать внутри чего (свойства/конструктора/метода) было выброшено исключение?
0
Лучшие ответы (1)
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
24.03.2019, 05:37
Ответы с готовыми решениями:

Почему (за счет чего) исключение внутри Task не рушит приложение?
Привет! Есть метод, который выбрасывает исключение: static void Process() { throw new Exception(); } Если вызвать...

Программа выдает исключение: Вызвано исключение: нарушение доступа для чтения. _Pnext было 0xCCCCCCD0
Доброго времени суток. Пишу игру с помощью SFML, и при внедрении события нажатии кнопки Tab появляется запись: "Вызвано исключение:...

Как найти из-за чего возникает исключение о переполнении стека?
Есть некоторый набор классов с большим числом зависимостей в программе и при создании экземпляра некоторого класса в модуле main возникает...

6
Эксперт JS
6496 / 3907 / 2006
Регистрация: 14.06.2018
Сообщений: 6,781
24.03.2019, 07:55
Пример:
C#
1
2
            var e = new ExecutionEngineException();
            e.StackTrace;
В стеке вызовов - названия методов и позиция в строке кода, где отмечена трассировка исключения.
Поймать экземпляр исключения можно например в конструкции catch, но не только.
Результат завершения Task тоже может выдать экземпляр исrлючения.

Причём так сейчас организовано во многих языках программирования. Не только в C#
0
Alvin Seville
 Аватар для Соколиный глаз
343 / 273 / 134
Регистрация: 25.07.2014
Сообщений: 4,537
Записей в блоге: 22
24.03.2019, 08:39  [ТС]
amr-now, не, я не это имел ввиду. Я хотел не в виде строки получить данные об этом. А виде какого-то объекта, который бы указал в конструкторе, методе или свойстве исключение было выброшено.
0
Эксперт .NET
 Аватар для kolorotur
17823 / 12973 / 3382
Регистрация: 17.09.2011
Сообщений: 21,261
24.03.2019, 10:12
Соколиный глаз, а с какой целью вам это нужно?
Ведь место выброса — это деталь реализации класса, который бросает исключение.
Допустим, сегодня какой-то класс из сторонней либы бросает исключение из конструктора, а завтра его реализация поменялась и теперь исключение бросается хоть и из конструктора, но косвенно — через вспомогательный метод типа ThrowIfSomething.
Как это повлияет на вашу программу? И если повлияет, то у вас где-то в коде имеется очень серьезный изъян.
1
Alvin Seville
 Аватар для Соколиный глаз
343 / 273 / 134
Регистрация: 25.07.2014
Сообщений: 4,537
Записей в блоге: 22
24.03.2019, 10:49  [ТС]
kolorotur, просто интересно возможно ли это с технической точки зрения?
0
Эксперт JS
6496 / 3907 / 2006
Регистрация: 14.06.2018
Сообщений: 6,781
24.03.2019, 12:20
Лучший ответ Сообщение было отмечено Соколиный глаз как решение

Решение

Цитата Сообщение от Соколиный глаз Посмотреть сообщение
Я хотел не в виде строки получить данные об этом. А виде какого-то объекта, который бы указал в конструкторе, методе или свойстве исключение было выброшено.
Между прочим, некрасиво так переиначивать вопрос.
Добавлено через 7 минут
C#
1
2
3
4
5
6
7
8
9
10
            try
            {
                throw new ExecutionEngineException();
            }
            catch (Exception err)
            {
                var m = err.TargetSite;
                
                Console.WriteLine(m.MemberType);
            }
1
Alvin Seville
 Аватар для Соколиный глаз
343 / 273 / 134
Регистрация: 25.07.2014
Сообщений: 4,537
Записей в блоге: 22
24.03.2019, 17:34  [ТС]
amr-now, я не совсем точно его поставил, но я не переиначивал, между прочим.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
24.03.2019, 17:34
Помогаю со студенческими работами здесь

Как мне обработать исключение так, чтобы программа продолжала работать, будто исключения не было?
Друзья! Есть текстовый файл в кодировке UTF-16LE (суть тот же самый файл *.reg, только сохранённый с расширением *.txt), там даже BOM...

Как узнать какое поле было изменено
Сори, есть ли способ узнать в ADO в BeforPost или AfterPost Какое поле было изменено. Заранее благодарен.

Как узнать из какого файла было запущено приложение?
Как узнать из какого файла было запущено приложение, то есть например нажимаю пкм на файле выбираю открыть с помощью моего приложения, а...

Как узнать на какую кнопку мыши было нажато?
Podskazite mozno li uznat na kakuju knopku mishki bil sdelan click na pravuju ili na levuju? Spasibo! Inessa

как узнать нажатие клавиши было программным или от пользователя
Всем доброго времени суток. Собственно сабж. Как узнать нажал клавишу пользователь или программа, не прибегая к написанию своих дров.


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
7
Ответ Создать тему
Новые блоги и статьи
Ритм жизни
kumehtar 27.02.2026
Иногда приходится жить в ритме, где дел становится всё больше, а вовлечения в происходящее — всё меньше. Плотный график не даёт вниманию закрепиться ни на одном событии. Утро начинается с быстрых,. . .
SDL3 для Web (WebAssembly): Сборка библиотек SDL3 и Box2D из исходников с помощью CMake и Emscripten
8Observer8 27.02.2026
Недавно вышла версия SDL 3. 4. 2 библиотеки SDL3. На странице официальной релиза доступны исходники, готовые DLL (для x86, x64, arm64), а также библиотеки для разработки под Android, MinGW и Visual. . .
SDL3 для Web (WebAssembly): Реализация движения на Box2D v3 - трение и коллизии с повёрнутыми стенами
8Observer8 20.02.2026
Содержание блога Box2D позволяет легко создать главного героя, который не проходит сквозь стены и перемещается с заданным трением о препятствия, которые можно располагать под углом, как верхнее. . .
Конвертировать закладки radiotray-ng в m3u-плейлист
damix 19.02.2026
Это можно сделать скриптом для PowerShell. Использование . \СonvertRadiotrayToM3U. ps1 <path_to_bookmarks. json> Рядом с файлом bookmarks. json появится файл bookmarks. m3u с результатом. # Check if. . .
Семь CDC на одном интерфейсе: 5 U[S]ARTов, 1 CAN и 1 SSI
Eddy_Em 18.02.2026
Постепенно допиливаю свою "многоинтерфейсную плату". Выглядит вот так: https:/ / www. cyberforum. ru/ blog_attachment. php?attachmentid=11617&stc=1&d=1771445347 Основана на STM32F303RBT6. На борту пять. . .
Камера Toupcam IUA500KMA
Eddy_Em 12.02.2026
Т. к. у всяких "хикроботов" слишком уж мелкий пиксель, для подсмотра в ESPriF они вообще плохо годятся: уже 14 величину можно рассмотреть еле-еле лишь на экспозициях под 3 секунды (а то и больше),. . .
И ясному Солнцу
zbw 12.02.2026
И ясному Солнцу, и светлой Луне. В мире покоя нет и люди не могут жить в тишине. А жить им немного лет.
«Знание-Сила»
zbw 12.02.2026
«Знание-Сила» «Время-Деньги» «Деньги -Пуля»
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru