如何正确地为 Office COM 加载项实现 IDTEXtensibility2 接口?
-
23-08-2019 - |
题
我正在为 Outlook 实施 COM 加载项。我使用 IDTEXtensibility2。我不确定这是否是执行 COM 加载项的最佳方式,但我无法更改它。
该接口定义了五个方法:OnConnection、OnStartupComplete、OnAddInsUpdate、OnBeginShutdown、OnDisconnection。
我需要执行以下操作:
- 从文件加载配置数据
- 加载注册表数据
- 开始新会话
- 创建 *.pst 文件
- 订阅资源管理器事件
- 连接到 Internet 服务器以获取一些数据
- 在主菜单中创建菜单项
- 创建工具栏
- 在 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
.
不隶属于 StackOverflow