Windows服务未停止,停留在退订ews订阅上

时间:2019-09-12 09:47:27

标签: c# .net windows-services exchangewebservices external

该服务的作用类似于邮箱上的邮件监视程序,并且在新服务器上安装后可以正常工作。但是,在停止它的同时,我收到以下错误消息,即

  

该服务目前无法接受控制消息

以及杀死它的所有方法均无效。 根据日志,它停留在removeSubscription()上。

public static void Unsubscribe ()
{
     if (_ss.Id.Length>0){
              Logger.log("Reached Here");
             _connection.RemoveSubscription(_ss);
       }
}

这里_ss是streamingSubscription,_connection是streamingSubscriptionConnection引用

您能告诉我如何解决吗? 附言:同一服务在其他服务器上效果很好。

2 个答案:

答案 0 :(得分:0)

您可以这样杀死它。

首先获取PID sc queryex <servicename>

然后使用taskkill杀死pid taskkill /pid <pid> /f

在Admin命令提示符下

答案 1 :(得分:0)

好吧,实际上此功能以前在以前的服务器上可以很好地工作,因此没有使用try catch块来处理异常。

当我记录异常时,事实证明它引发了一个错误,该错误要求首先关闭连接。因此将代码更改为

_connection.close();
_connection.RemoveSubscription();

这解决了问题。