2

我正在使用运行 IIS 7 的 Windows Server Standard 设置的新机器上构建概念验证。

我需要做的任务是登录用户并使用 Office Communicator 2007 检查同一台机器上交换框上其他用户的存在(以及存在类型、在线、离线、离开、忙碌等)。

代码看起来很简单:

public string GetStatus(string username)
    {
        try
        {
            if(this.CurrentCommunicator == null)
                this.CurrentCommunicator = new CommunicatorAPI.MessengerClass();

            this.CurrentCommunicator.Signin(0, "********", "*****");

            if (CurrentCommunicator != null)
            {
                foreach (IMessengerContact contact in CurrentCommunicator.MyContacts as IMessengerContacts)
                {
                    if (!contact.IsSelf)
                        if (contact.SigninName.Contains(username))
                        {
                            MISTATUS status = contact.Status;
                            return GetStatusString(status);
                        }
                }
            }
        }
        catch (Exception ex)
        {
            return ex.Message;
        }
        return "Unknown";
    }

我使用正确的 u/p 登录到 Office Communicator 2007,因此 OCS 实例化,但是当代码尝试循环访问联系人时:

foreach (IMessengerContact contact in CurrentCommunicator.MyContacts as IMessengerContacts)

它抛出这个错误:

由于以下错误,检索具有 CLSID {8885370D-B33E-44B7-875D-28E403CF9270} 的组件的 COM 类工厂失败:80070005。

Chris Crowe 的博客似乎提供了一条前进的道路,但在更改了“Office Communicator Messenger 类”的启动和激活权限之后,“网络服务”具有本地启动激活权限 - 引发的 COM 错误没有任何变化。

我也尝试过不加更改地授予“所有人”启动和激活权限。


我已经阅读了大量的 OCS 文章,但我似乎无法解决这个问题。在我拧出更多的头发之前请帮忙。

我如何编写自己的 C# 程序以登录 Office Communicator http://www.mombu.com/microsoft/live-communications-server-developer/t-how-i-can-write-my-own-c-program -for-login-in-office-comunicator-927275.html

如何使用 office communicator sdk http://blogs.msdn.com/b/cmayo/archive/2009/09/21/how-to-get-presence-using-office-communicator-sdk.aspx获得存在感

2 分钟了解 Office Communicator 自动化 API http://blogs.msdn.com/b/cmayo/archive/2009/01/08/the-office-communicator-automation-api-in-2-min.aspx

使用 Office Communicator 自动化 API http://blogs.msdn.com/b/midunn/archive/2008/03/09/using-the-communicator-automation-api.aspx

在 Office Communicator 中构建自定义联系人列表 http://msdn.microsoft.com/en-us/library/bb758709(v=office.12).aspx

Office Communicator 在线状态如何工作? Office Communicator 在线状态如何工作?

检测用户存在 检测用户存在

OWA 2010 表单身份验证的配置信息 http://www.stone-ware.com/cloud/support/3rdPartyDetails.jsp?id=216

开始使用 Office Communicator 自动化 API http://msdn.microsoft.com/en-us/library/bb758820(office.12).aspx

.NET Framework 应用程序的 Office Communicator 2007 开发环境 http://msdn.microsoft.com/en-us/library/bb787231(v=office.12).aspx

当您更改 Office Communications Server 2007 服务帐户的密码http://support.microsoft.com/kb/953112/en-us时,将在事件查看器中记录事件 ID 56013,错误代码为 80070005

通过更改“启动和激活”权限来修复 Office COM 80070005 错误 http://blog.crowe.co.nz/archive/2006/03/02/589.aspx

登录 Communicator (Office Communicator 2007) http://office.microsoft.com/en-gb/communicator-help/sign-in-to-communicator-HA010206469.aspx?redir=0

自动登录到 OCS API 示例 http://social.msdn.microsoft.com/Forums/en-US/ucclientsdk/thread/bc0ba921-7cc5-4098-b137-ffb85d667e58

Office 2007 - 接口成员调用 http://msdn.microsoft.com/en-us/library/bb758725(v=office.12).aspx

4

0 回答 0