Поделиться через


Обработка ошибок в библиотеке DLL

Используйте ведение журнала событий для записи ошибок, возникающих в библиотеке DLL производительности. Ведение журнала событий ошибок помогает устранять неполадки приложений, которые предоставляют данные о производительности во время разработки и после установки. Следует ограничить объем ведения журнала ошибок, возникающих в функции CollectPerformanceData , так как сбор данных может быть частым.

При возникновении проблем с функцией OpenPerformanceData система регистрирует следующие ошибки в журнале событий. При возникновении одной из следующих ошибок система не вызывает библиотеку DLL производительности. Вместо этого библиотека DLL выгружается.

  • PERFLIB_OPEN_PROC_NOT_FOUND — записывается в журнал, если имя процедуры, определенное в реестре, не удалось найти в библиотеке DLL в качестве экспортируемой функции. Обычно это происходит, если библиотека DLL или служба установлены неправильно или имя функции было переименовано без обновления процедуры установки.
  • PERFLIB_OPEN_PROC_FAILURE — регистрируется, когда открытая процедура возвращает состояние ошибки, отличное от ERROR_SUCCESS. В этом случае библиотека DLL также должна была ввести запись журнала событий, описывающую условия, вызвавшие сбой.
  • PERFLIB_OPEN_PROC_EXCEPTION — регистрируется при обнаружении необработанного исключения в открытой процедуре. Обычно это происходит из-за непредвиденного состояния ошибки, обнаруженного открытой процедурой.