InvalidProgramException: определить неисправную инструкцию
Я генерирую сборки динамически и вызываю методы из этих сборок. Я использую как визуальную студию, так и моно. Иногда я делаю что-то не так с ILGenerator.Emit и получаю InvalidProgramException при попытке вызвать метод.
Есть ли способ получить ошибочную инструкцию?
Пока что мне нужно разобрать сборку с помощью ILSpy и вручную пройти через IL, что нормально, когда сгенерированный метод прост.
К сожалению, иногда сгенерированный метод содержит сотни инструкций MSIL, и выявить ошибку становится все труднее.
Интересно, есть ли что-нибудь встроенное, чтобы помочь мне.
К сожалению, peverify не очень помогает, поскольку я генерирую небезопасный код (с указателями). Поэтому я получаю такие ошибки:
Неуправляемые указатели не поддаются проверке
Кроме того, некоторые из этих ошибок происходят только с моно, а не с визуальной студией.
Спасибо