Почему я не получаю файл дампа для исключения первого шанса
Вот код, который должен генерировать исключение первого шанса.
class MyClass
{
public string SomeField { get; set; }
}
class Program
{
static void Main(string[] args)
{
try
{
Print(null);
}
catch { }
}
static void Print(MyClass myclass)
{
Console.WriteLine(myclass.SomeField);
}
}
Я настроил ProcDump для записи аварийных дампов следующим образом.
ProcDump -ma MyApplication.exe
Насколько я понимаю, эта команда должна захватить оба исключения первого и второго изменения. Однако с кодом выше я не получаю никаких исключений. Если удалить блок catch из моего кода, я получаю файл дампа, но это должно быть вторым случайным исключением. Есть идеи, почему я не получаю аварийный дамп для первого шанса?
1 ответ
Решение
Вы не используете это правильно, не стесняйтесь сказать вам это. Измените свой код на:
static void Main(string[] args) {
Console.WriteLine("Okay, start ProcDump now and press Enter");
Console.ReadLine();
try {
Print(null);
}
catch { }
}
Рассмотрим DebugDiag в качестве альтернативы.