AFAIK только Debug-API из внешнего процесса.
Кстати, даже в этом случае не всегда всё будет гладко. Например метод может быть заинлайнен, или локальные переменные соптимизированы, или уже вышли из области видимости и собраны GAC, или...
Ищу самое простое решение для элементарной задачи — получить содержимое определенного стек-фрейма и найти в нём NULL-указатели.
По какой-то причине, такая тривиальная задача не нашла быстрого решения. Подскажите — куда смотреть?
Наиболее реалистичный вариант на данный момент — это использовать ICorDebug::DebugActiveProcess. Но для этого потребуется запустить внешний процесс-отладчик, подключиться к текущему процессу, зарегистрировать кучу коллбеков, построить взимодействие между текущим процессом и внешним. В общем, как из пушки по воробьям.
Ищу более простое решение.
P.S. Задача — перечислить и распечатать все null-ptr при возникновении NullReferenceException. MS эту проблему как-то решили и в последних версиях .NET Framework стали писать имя параметра с null-значением. Хочу также, но под .NET 4.5.2.
Здравствуйте, pugv, Вы писали:
P>AFAIK только Debug-API из внешнего процесса.
P>Кстати, даже в этом случае не всегда всё будет гладко. Например метод может быть заинлайнен, или локальные переменные соптимизированы, или уже вышли из области видимости и собраны GAC, или...
Обидно.
((
Спасибо!