Что именно “определяется приложением” в отношении UnhandledExceptionFilter?
-
26-09-2019 - |
Вопрос
MSDN описывает UnhandledExceptionFilter
следующим образом: "Определяемая приложением функция, которая передает необработанные исключения отладчику, если процесс отлаживается".
Но эта функция явно предоставляется операционной системой, в kernel32.dll согласно той же странице.
Так почему же они это называют функция, определяемая приложением?
Решение
Да, очень неловкий язык. Это прототип Определение функции. Который вы можете использовать с ключевым ключевым словами __except или в качестве аргумента для SetUnhandledExceptionFilter (). Либо сделает вашу функцию определенной приложения.
Там дел по умолчанию. Что я полагаю, это то, что они имели в виду, что проходит исключения с отладчиком ». Документы SDK для SEH заслуживают всестороннего провала.
Другие советы
UnhandledExceptionFilter() сам по себе не является собственной функцией, предоставляемой ядром (хотя ядро реализует свою собственную реализацию по умолчанию, которая используется до тех пор, пока вы не переопределите ее своей собственной).Документация UnhandledExceptionFilter(), которую вы цитируете, описывает прототип функции, которому вы должны следовать, если решите реализовать свою собственную функцию и передать ее функции SetUnhandledExceptionFilter(), чтобы активировать ее в ядре.