当通过服务器上的mvc调用LyncClient.GetClient()不起作用

我有一个棘手的问题,希望有人能帮助我(对我来说真的很重要)。

如果有人在网站上执行特定操作,我的网站应该通过Lync客户端自动拨打电话。 出于这个原因,一个batch file被调用,该bat文件调用我的程序与参数。

这听起来像一个编码问题的计算器,但一切工作正常,我的电脑,甚至在我的程序被手动调用的服务器上。 当我的mvc网站调用程序,特别是这个函数LyncClient.GetClient(); 我收到一个exception“主机进程没有运行”。 在我的笔记本上调用VS2012的debugging工具在网站上工作。 我知道这个过程正在运行,因为我可以通过任务pipe理器closures它,当我再次运行它时,它会通过我的程序调用。 这个函数LyncClient.GetClient(); 内置。

有任何想法吗? 我想这一定与可能没有足够权限访问lync客户端的Website-User有关。

我不是程序员@yourmother,但是看起来如果你得到“主机进程没有运行”,那么无论什么尝试调用Lync客户端都不是在调用应用程序/程序。

环顾四周,情况就是这样: http : //social.msdn.microsoft.com/Forums/en-US/communicatorsdk/thread/582cab2e-d51a-4bfe-b4cc-1eed92411754/

问题在于Lync客户端在该工作站上下文中的用户桌面上运行。 您的ASP.NET应用程序正在IIS进程下的独立工作站上下文中运行,并且无权访问在用户上下文中运行的Lync客户端。

在IIS中没有任何事情可以解决这个问题。 如果你能告诉我们你想要完成什么,那么也许我们可以提出另一种方法。

他们build议的修补程序是使用此处find的UCMA API: http : //www.microsoft.com/download/en/details.aspx?id= 10566或可能使用此处find的SDK: http:// www。 microsoft.com/en-us/download/details.aspx?id=18898

这有帮助吗? 我不希望这是格式化的评论,但我会删除这个作为一个答案,如果它不,或者你已经知道这个…

对我来说,解决scheme是让我的工具以“pipe理员”帐户运行。 我不得不改变autologin的registry设置。 我只是简单地创build一个文件,如果该电话应该开始,并应该停止时删除它。 如果该文件存在,该工具将检查每个视图的秒数,并且只在存在Lync调用的情况下执行。

我知道这不是最好的方法,但是它适用于我的最后期限。 MS对于具有不同Lync Client / Lync Server版本和Visual Studio版本的所有Lync SDK存在一些兼容性问题。