我正在使用Microsoft Lync 2010 API编写自定义的轻量级进/出板(AKA状态,状态等)应用程序。 它需要启动/login后运行,但我遇到了一个问题,当我login后,我开始/重新启动机器。 我从LyncClient.GetClient
方法中得到以下错误
System.Runtime.InteropServices.COMException(0x800706BE):远程过程调用失败。 (从HRESULTexception:0x800706BE)Microsoft.Office.Uc.IUCOfficeIntegration.GetInterface(String _version,OIInterface _interface)在Microsoft.Lync.Model.LyncClient.GetClient()
我的应用程序是从networking驱动器运行的ClickOnce应用程序。 只能在在线模式下使用。 .application文件是从netlogon运行的batch file中调用的。 如果我的计算机运行一段时间后运行batch file,它工作正常。 如果我注销并重新login,它也可以工作。因此,我假设在LyncClient.GetClient
方法时还有一个尚未开始的服务。
我会同意,这是一个您正在等待的服务,并且会冒险推测“远程过程调用(RPC)”服务。 这是使COM通信(即处理COM激活请求等)的服务。
测试这个很尴尬,因为服务控制管理器不允许你关闭服务 – 这是一个关键的服务,因为大量的Windows依赖于COM。
要进行测试,您可以在代码中检查服务的启动状态,然后在启动服务时仅初始化Lync。