【问题标题】:IM Client Integration with OutlookIM 客户端与 Outlook 的集成
【发布时间】:2016-08-02 18:12:30
【问题描述】:

我正在尝试了解将 IM 客户端与 Outlook 2010 集成的过程。以下链接用于此:-

https://msdn.microsoft.com/en-us/library/office/jj900715.aspx

Outlook 能够访问我的实现的 CreateInstance 方法。

  1. 如果我安装了 Lync 客户端,而控件到达 GetInterfaceMethod 之前,我将在其中返回 IlyncClient 的对象。

此后没有任何进展。 Outlook 调试中显示以下错误:

MsoIMProviderFactory--HrEnsureDefaultIMAppRegKeys 成功打开注册密钥(HKCU-SOFTWARE\IM Providers)

CMsoIMProviderFactory--HrEnsureDefaultIMAppRegKeys 查询注册键成功(HKCU-SOFTWARE\IM Providers-DefaultIMApp-IMapp)

CMsoIMProviderFactory--HrEnsureDefaultIMProcessRegKey 成功打开注册密钥(HKCU-SOFTWARE\IM Providers\IMapp)

CMsoIMProviderFactory--HrEnsureDefaultIMProcessRegKey 成功打开注册密钥(HKLM-SOFTWARE\IM Providers\IMapp)

CMsoIMProviderFactory--WhichMessengerInProcessList 使用 (IMapp) 进程名称进行搜索

CMsoIMProviderFactory--WhichMessengerInProcessList 使用 (IMapp) 进程名称进行搜索

请各位大侠给点意见????

  1. 如果我没有安装 Lync 客户端,则控制永远不会到达身份验证方法。

A.我们还需要实现 IMessenger 接口吗?

B.如果是,那么请提供一些关于如何做到这一点的指示?

任何解决此问题的指针都会有所帮助。

为了构建我们使用进程外 COM 示例(CSExeCOMServer)的 COM 服务器。我也尝试了与 Outlook 2013 相同的设置。在这方面,输出也保持不变。

环境:-

Windows 7 服务包1。

展望 2010 和 2013 年。

【问题讨论】:

    标签: outlook


    【解决方案1】:
    1. 您始终需要在计算机中安装 Lync,因为您在代码中使用的接口是由 Lync 定义的。如果您想删除此依赖项,则必须在系统中注册您的类型库 (.tlb)。要生成 .tlb,您需要一个 .idl 文件,您可以在网上探索如何获取该文件。
    2. 如果您想成为 IM 提供者,则无需实现此 IMessenger 接口。但是如果你想以 Legacy 提供者的方式工作,你将不得不实现这个接口(这个我没有尝试过)。
    3. 为了解决您的问题,我需要代码 sn-p 作为您定义 LyncClient 类的方式。一旦你分享了,我会尽力帮助你。

    我能够在 Outlook 2010 和 2013 中完成这项工作,但后来我使用 C# 方式来实现 COM 服务器。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2018-02-25
      • 2018-02-07
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多