Kam*_*eld 6 .net c# windows windows-services
我遇到了一个我用C#编写的Windows服务无法解决的问题.我想要做的是等待一个指定的时间让子进程终止,然后我被迫杀死它并停止服务.我将超时设置为5到15秒之间的任何时间,我的服务等待适当的时间,然后杀死孩子并在我通过mmc服务窗口停止时停止.但是,如果我关闭计算机,我的服务会在能够等待和正常停止之前被吹走.我已经读过Windows允许服务在关闭之前超时30秒.我的代码执行的时间远远少于30秒,最大值约为20秒左右,具体取决于我设置的超时时间.
我尝试在win32 Api中使用SetServiceStatus()函数,但它没有改变代码的功能.我已经验证函数调用是否成功.有没有其他方法可以强制Windows等待我的服务正常关闭?我在Windows 7 x86和Windows Vista Sp1 x86中测试它.
| 归档时间: |
|
| 查看次数: |
4799 次 |
| 最近记录: |