尝试运行 Windows 服务时出现 LyncClientException

Posted

技术标签:

【中文标题】尝试运行 Windows 服务时出现 LyncClientException【英文标题】:LyncClientException when trying to run Windows service 【发布时间】:2015-07-22 22:45:13 【问题描述】:

我有一个使用 Microsoft Lync 2010 SDK 的 Windows 服务。当我在本地运行服务时,一切似乎都按预期运行。当我尝试将代码部署到 VM 时,当我尝试启动服务时,它会出错

The Foo service on Local Computer started and then stopped. Some services stop automatically if they are not in use by other services or programs.

查看事件查看器,我看到一个异常

 Service cannot be started. Microsoft.Lync.Model.LyncClientException: Generic COM Exception. Code is 0x80080005.
   at Microsoft.Lync.Model.LyncClient.EnsureOI()
   at Microsoft.Lync.Model.LyncClient.GetClient()

我尝试在 VM 上安装 Visual Studio 和 windows lync 2010 SDK,但这也没有解决问题。还有什么我应该尝试的吗?

编辑:

重新启动 VM 和重新启动 lync 客户端的组合似乎可以解决问题,但这是最不令人满意的解决方案。

【问题讨论】:

【参考方案1】:

您正在使用 Lync 客户端 SDK,前提条件是 Lync 客户端已安装并在该计算机上运行。 https://msdn.microsoft.com/en-us/library/office/hh378549(v=office.14).aspx

当您正在编写 Windows 服务时,我怀疑您不希望出现 Lync 客户端,在这种情况下您可能需要启用 ui 抑制模式https://msdn.microsoft.com/en-us/library/office/jj933224.aspx

如果安装 Lync 客户端不是一个选项,那么您可能需要考虑使用 UCMA API,它可能更适合基于服务器的解决方案 https://msdn.microsoft.com/en-us/library/office/dn454984.aspx

【讨论】:

1.我在机器 2 上安装了 lync 客户端。我们仍在开发应用程序,因此打开 Lync 客户端有时很有用。在最终版本中,我希望启用 ui 抑制。 2.是的,但是有 UI 抑制会有所不同,所以我至少会在你说它失败的 VM 上启用它。这可以防止由于最终丢失用户会话(桌面)而导致的问题。但这取决于服务使用哪个用户帐户运行,以及最终服务是否设置为允许与桌面交互 我同意 Paul Hodgson 的观点,UCMA 可能更适合这种情况 Lync 客户端是否正在运行,您是否已在 VM 上登录它?是虚拟机上安装的2010客户端吗?

以上是关于尝试运行 Windows 服务时出现 LyncClientException的主要内容,如果未能解决你的问题,请参考以下文章

启动运行 Mongo DB 1.6.3 的 Windows XP 服务时出现错误 1053

尝试在运行 docker-toolbox 的 Windows 上使用 docker-compose 在 docker 容器内运行 webpack-dev-server 时出现“来自服务器的空回复”

运行独立的pyspark时出现Windows错误

为 rmiregistry 实例化服务器类时出现运行时异常

尝试使用 Windows 7 为 Symfony2 项目转储资产时出现运行时异常

在 Windows 上通过 Apache Lounge 部署烧瓶应用程序时出现内部服务器错误