none
监控服务 RRS feed

  • 问题

  • 本人惭愧,写的服务程序现在不知道是什么原因,总是喜欢挂。挂的时候提示服务遇到异常需要关闭

    此时我写好了一个监控程序,一检测到服务挂了就重启服务

    但我不敢肯定,此时服务异常,我重启服务,此时系统能让服务重启吗

    如果不行,那么我写的这个监控程序就无用了,那谁能教我一个办法,在此情况下去重启服务

    2011年8月5日 7:52

答案

  • 你好,

     

    你可以尝试使用try-catch来解决您的问题。把您认为可能会发生异常的地方放如try模块中,并且在catch中捕获,当捕获到的时候,可以进行异常处理,如果失败就直接退出。

     

    此外,你也可以使用SetErrorMode,并且设置参数 SEM_ NOALIGNMENTFAULTEXCEPT,即系统部显示错误报告。

     

    希望我的回答能够帮助您,解决您的问题


    Rob Pan [MSFT]
    MSDN Community Support | Feedback to us
    Get or Request Code Sample from Microsoft
    Please remember to mark the replies as answers if they help and unmark them if they provide no help.

    • 已标记为答案 Rob Pan 2011年8月15日 3:06
    2011年8月10日 8:19

全部回复

  • 可以的,服务定期向监视程序发送心跳消息。如果监视程序在一段时间内没有接到消息,则记录log,并重新启动应用程序即可。
    麻烦把正确答案设为解答。
    2011年8月5日 10:05
    版主
  • 做过测试了不行

    当程序出错的时候会弹出一个框

    说程序错误,如果不点击确定服务就不能停下来,那程序就不能发现此程序已经错误。也就不能重启

    有什么好办法解决它弹出的这个框不,不然程序即使启动也无用啊

    2011年8月7日 9:21
  • 有高手可以指点一个方法么
    2011年8月10日 1:21
  • 你好,

     

    你可以尝试使用try-catch来解决您的问题。把您认为可能会发生异常的地方放如try模块中,并且在catch中捕获,当捕获到的时候,可以进行异常处理,如果失败就直接退出。

     

    此外,你也可以使用SetErrorMode,并且设置参数 SEM_ NOALIGNMENTFAULTEXCEPT,即系统部显示错误报告。

     

    希望我的回答能够帮助您,解决您的问题


    Rob Pan [MSFT]
    MSDN Community Support | Feedback to us
    Get or Request Code Sample from Microsoft
    Please remember to mark the replies as answers if they help and unmark them if they provide no help.

    • 已标记为答案 Rob Pan 2011年8月15日 3:06
    2011年8月10日 8:19