Обработка ошибок и предупреждений
Обновлен: Ноябрь 2007
Дополнительные сведения об обработке ошибок и предупреждений см. в разделе Понимание вспомогательной функции.
Дополнительные сведения о функциях-ловушках см. в разделе Определения структур и констант.
Если программа использует DLLs, загружаемые с задержкой, она должна обрабатывать ошибки надежно, т.к. ошибки, возникающие в процессе выполнения программы, могут давать необрабатываемые исключения. Обработка сбоев включает в себя две части:
1. Восстановление ловушки.
Если код нуждается в восстановлении или предоставлении альтернативной библиотеки, и/или процедуре обработки ошибок, ловушка может быть предоставлена вспомогательной функцией, которая поддерживает или устраняет ситуацию. Процедура обработки требует возврата подходящего значения, и тогда обработка может продолжаться (HINSTANCE или FARPROC), либо 0, чтобы указать, что будет сгенерировано исключение. Это также возможно сделать через исключение или вывод longjmp за пределы ловушки. Это обработчики уведомлений и обработчики сбоев.2. Отчет или исключение.
Если все, что необходимо для обработки ошибки – это прекращение процедуры, никаких обработчиков не требуется до тех пор, пока код пользователя может обработать исключение.
Более подробно вопросы, связанные с обработкой ошибок и уведомлений, рассматриваются в следующих разделах: