DLL 中的错误处理

使用事件日志记录来记录性能 DLL 中发生的错误。 记录错误事件有助于排查在开发期间和安装后提供性能数据的应用程序。 应限制 CollectPerformanceData 函数中发生的错误日志记录量,因为数据收集可能频繁。

如果 OpenPerformanceData 函数出现问题,系统会将以下错误记录到事件日志中。 如果发生以下错误之一,则系统不会再次调用性能 DLL。 而是卸载 DLL。

  • PERFLIB_OPEN_PROC_NOT_FOUND — 在 DLL 中找不到注册表中定义的过程名称作为导出函数时记录。 如果未正确安装 DLL 或服务,或者未更新安装过程就重命名了函数名称,则通常会发生这种情况。
  • PERFLIB_OPEN_PROC_FAILURE — 当打开的过程返回错误状态时记录ERROR_SUCCESS以外的错误状态。 如果发生这种情况,DLL 还应输入一个事件日志条目,描述导致失败的条件。
  • PERFLIB_OPEN_PROC_EXCEPTION — 打开的过程遇到未经处理的异常时记录。 这通常是由于打开过程遇到意外的错误条件造成的。