我正在开发一个 Outlook 插件,它通过 Web 服务进行身份验证以从数据库中获取数据并将数据存储在数据库中。当插件启动时,它会查询 Web 服务以确定所安装插件的版本是否是当前版本,如果不是,则它会通过以下方式从 Outlook 卸载插件
Application.COMAddIns.Item("foo").Connect = false;
为了查询 Web 服务,它必须对其进行身份验证。凭据是从 Windows 注册表中的加密字符串中检索的。这些凭据来自一个 Form 对象,该对象在插件启动或对 Web 服务进行查询并且无法从注册表中检索用户名和/或密码时运行,通常是由于有人删除了所述值。
每当保存凭据时,这些凭据都会用于查询 Web 服务以检查插件是否是正确的版本。如果不是,则 COM 插件将与 Outlook 断开连接。
每当出于其他目的查询 Web 服务时,首先会进行查询以检查插件是否是正确的版本。如果不是,则 COM 插件将与 Outlook 断开连接。
据我所知,断开插件只能从 Outlook.Application 对象完成,到目前为止我只能从我的 Addin 对象访问。
我需要弄清楚的是,当我不在我的 Addin 对象中时,如何断开 Outlook Addin 或以其他方式禁用它?