У меня есть проект, который состоит из приложения C#, которое вызывает пару C++/CLI DLL. Если у меня есть фатальная ошибка Visual Studio C Runtime Library в собственном коде, похоже, нет способа ее поймать.Поймать C Runtime Library fatal error in (mixed) .NET code?
Чтобы дать простой пример, если я ставлю это в машинный код:
wchar_t buf[1]; ::wcscpy_s(buf, 1, L"ab");
Приложение будет врезаться (в версии сборки). Это не исключение, и я не могу его поймать __try ...__ except.
Я хотел бы поймать такие ошибки, чтобы я мог отобразить хороший диалог ошибок, в идеале с помощью вызова. Я решил бы создать minidump, но я попытался создать minidump, вызвав :: SetUnhandledExceptionFilter() в одной из DLL C++/CLI, но, похоже, тоже не работает.
Есть ли способ изящно обработать фатальную ошибку C Runtime Library в приложении .NET?