Я пытаюсь отладить проблему в библиотеке DLL, написанной на C, которая продолжает вызывать нарушения доступа. Я использую Visual C ++ 2008, но код на C.
Я привык к Delphi, где, если во время работы под отладчиком возникает исключение, программа немедленно переключается на отладчик и дает вам возможность проверить состояние программы. Однако в Visual C ++ все, что я получаю, - это сообщение на вкладке «Вывод»:
First-chance exception at blah blah blah: Access violation reading location 0x04410000.
Никаких перерывов, ничего. Он просто идет и раскручивает стек, пока он не вернется в мой Delphi EXE, который распознает что-то не так и предупредит меня об этом, но к этому моменту я потерял несколько уровней стека вызовов, и я не знаю, что происходит.
Я пробовал другие методы отладки, но все, что он делает, происходит глубоко внутри вложенного цикла внутри макроса C, который вызывается более 500 раз, и это немного выходит за рамки моих навыков (или моего терпения), чтобы отследить его.
Я полагаю, что должен быть какой-то способ получить исключение «первого шанса», чтобы на самом деле дать мне «шанс» справиться с этим. Вероятно, есть какой-то параметр конфигурации «немедленное прерывание при первоочередном исключении», о котором я не знаю, но, похоже, он не так уж легко обнаруживается.
Кто-нибудь знает где это и как включить?