我正在为 Outlook 实施 COM 加载项。我使用 IDTEXtensibility2。我不确定这是否是执行 COM 加载项的最佳方式,但我无法更改它。

该接口定义了五个方法:OnConnection、OnStartupComplete、OnAddInsUpdate、OnBeginShutdown、OnDisconnection。

我需要执行以下操作:

  1. 从文件加载配置数据
  2. 加载注册表数据
  3. 开始新会话
  4. 创建 *.pst 文件
  5. 订阅资源管理器事件
  6. 连接到 Internet 服务器以获取一些数据
  7. 在主菜单中创建菜单项
  8. 创建工具栏
  9. 在 Outllok 中添加/删除一些内容(在 *.pst 文件级别)

请指教,我什么时候应该做什么?

  • 我需要在 OnConnection 方法中执行什么?
  • 仅当 OnStartupComplete 调用时才允许什么?
  • 在 OnBeginShutdown / OnDisconnection 期间我需要释放处置哪些资源?
有帮助吗?

解决方案

请注意,1,2 和 6 不是 Outlook 插件特定的任务。

3 不需要:作为插件,您不会创建会话 - 您可以与现有会话连接(通过实现 OnConnection 方法)。

对于 4 和 9,我建议使用 RDO: http://dimastr.com/redemption/(如果您确实需要另一次会议,也可以使用 3 次)

对于 5,7 和 8,我建议使用 ADX: http://www.add-in-express.com/add-in-net/
(你实际上不必担心 IDTExtensibility2 如果你这样做的话,就再也不会了)

OnConnection 是您获取参考的地方 Application 您可以从中导出其他所有内容的接口。

OnStartupComplete 是您可以放置​​所有初始化代码的地方。

OnDisconnection 是您应该释放会话期间可能积累的所有剩余 OOM 引用的位置,即从初始值派生的所有内容 Application 您通过以下方式收到的参考资料 OnConnection.

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top