#c #windows #dll
#c #Windows #dll
Вопрос:
Когда компьютер запускает мой exe-файл в Windows, он выходит из строя в ucrtbase.dll следующим образом:
extern "C" LONG WINAPI __scrt_unhandled_exception_filter(LPEXCEPTION_POINTERS const pointers)
{
auto const exception_record = reinterpret_cast<EHExceptionRecord*>(pointers->ExceptionRecord);
if (PER_IS_MSVC_PURE_OR_NATIVE_EH(exception_record))
{
terminate(); // Crash here
}
return EXCEPTION_CONTINUE_SEARCH;
}
Проблема в том, что сбой происходит, когда мое приложение вызывает функцию библиотеки (DLL) третьей стороны, поэтому я не могу это контролировать.
В настоящее время есть ли какие-либо проблемы с ucrtbase.dll ?
Как я могу предотвратить этот сбой в моей области?
Ответ №1:
По-видимому, есть исключение, которое никто не поймал. Вам нужно спуститься по стеку вызовов, пока вы не дойдете до вашего кода и не попытаетесь перехватить исключение там. Вам нужно найти свой код, который вызывает код этой библиотеки, который, в свою очередь, вызывает исключение. Не могу сказать ничего более конкретного, не видя кода, который приводит к этому.