【问题标题】:line numbers in event viewer事件查看器中的行号
【发布时间】:2011-06-22 04:28:54
【问题描述】:

我正在处理的 Windows 服务出现异常。它没有被我的任何 try/catch 块(我到处都有)捕获,但我可以在 Windows 事件日志中看到它。有没有办法让事件日志中的异常包含行号?

【问题讨论】:

    标签: c# .net windows debugging event-log


    【解决方案1】:

    订阅AppDomain.CurrentDomain.UnhandledException事件,你不会错过未处理的异常:

    public static void Main()
    {
        AppDomain.CurrentDomain.UnhandledException += CurrentDomain_UnhandledException;
    
        // Service Run
    }
    
    static void CurrentDomain_UnhandledException(object sender, UnhandledExceptionEventArgs e)
    {
        // log exception e.ExceptionObject
    }
    

    【讨论】:

    • @Joshua Evensen - 要查看代码行号,您需要将 pdb 文件与 exe 文件一起部署。如果您没有 pdb 文件,则无法将 IL 代码与源代码行关联起来。
    • @Joshua Evensen - 你的问题解决了吗?您是否尝试添加 pdb 文件?
    • @AlexAza - 我面临与 Joshua 类似的问题,但是当我将 .pdb 文件与其可执行文件放在同一目录中时,事件查看器中不会输出任何行号。有任何想法吗? (这是在 Windows Server 2008 R2 上)
    猜你喜欢
    • 2022-12-04
    • 1970-01-01
    • 2016-10-29
    • 1970-01-01
    • 1970-01-01
    • 2020-11-25
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多