Windows服务未捕获DLL中的错误

Windows服务未捕获DLL中的错误,dll,windows-services,Dll,Windows Services,我有一个每10分钟运行一次的Windows服务。每当DLL上出现错误时,服务不会抛出错误。如何使错误传播回Windows服务并使其生成事件查看器消息,甚至再次启动轮询 catch (Exception ex) { var errorMessage = ex.Message; if (ex.InnerException != null) errorMessage += " " + ex.

我有一个每10分钟运行一次的Windows服务。每当DLL上出现错误时,服务不会抛出错误。如何使错误传播回Windows服务并使其生成事件查看器消息,甚至再次启动轮询

        catch (Exception ex)
        {
            var errorMessage = ex.Message;
            if (ex.InnerException != null)
                errorMessage += " " + ex.InnerException.Message;

            eventLog1.WriteEntry(errorMessage, EventLogEntryType.Error);
            new Logging().LogMessageToFile(errorMessage, true);
        }

问题解决了!接住后再扔

catch (Exception ex)
    {
        var errorMessage = ex.Message;
        if (ex.InnerException != null)
            errorMessage += " " + ex.InnerException.Message;

        eventLog1.WriteEntry(errorMessage, EventLogEntryType.Error);
        new Logging().LogMessageToFile(errorMessage, true);

        throw;
    }

您如何知道DLL有错误?会发生什么?这一点非常重要,如果你问如何用你的服务捕获它,我会将它写入事件日志和日志文件。错误就在那里。。。在我写入日志文件后尝试抛出它,但没有成功。仍然感到困惑。。。如果您正在捕获异常并写入事件日志,那么听起来您的目标已经完成。不要忘记,您必须刷新事件查看器才能看到新事件。你想干什么?你需要这样做吗?catch(Exception ex){/*todo logging here/throw ex;/rethrow the Exception*/}在使用“throw new Exception();”进行日志记录后,我将返回并重新throw,并查看其结果。将报告。不,不要抛出新的空白异常,正确的形式是抛出您捕获的异常。我的评论格式怪异。