【问题标题】:Outlook Redemption - using RedemptionLoader without regsvr32 the DLLOutlook Redemption - 使用没有 regsvr32 DLL 的 RedemptionLoader
【发布时间】:2018-05-28 09:29:33
【问题描述】:

我想在不注册 COM dll (regsvr32) 的情况下使用邮件功能。 我遵循了以下信息:

http://www.dimastr.com/redemption/security.htm#redemptionloader

所以我用

初始化dll
private Redemption.SafeMailItem safeMail = Redemption.RedemptionLoader.new_SafeMailItem();

显示 Eval-Popup。都好。 但是当我将 Outlook 邮件项分配给对象时

 safeMail.Item = mail; // of type Microsoft.Office.Interop.Outlook.MailItem

然后出现这个异常:

无法将“System.__ComObject”类型的 COM 对象转换为接口 键入“Redemption.ISafeMailItem”。此操作失败,因为 对具有 IID 的接口的 COM 组件上的 QueryInterface 调用 “{0A95BE2D-1543-46BE-AD6D-18653034BF87}”由于以下原因而失败 错误:不支持此类接口(HRESULT 异常:0x80004002 (E_NOINTERFACE))。

使用 regsvr32 注册 dll 后它可以工作吗?但我不想那样。

我做错了什么?

编辑:

  • 我试过在开发机器上注册 COM
  • 删除 COM 并使用 Interop.Redemption.dll

在不注册 COM 的情况下使用 Loader 的预期方式是什么?

【问题讨论】:

标签: c# outlook-addin mapi outlook-redemption


【解决方案1】:

跳过了在主线程中初始化加载器,在另一个线程中调用方法的陷阱……

Redemption + Clickonce = :-(

【讨论】:

    猜你喜欢
    • 2010-10-10
    • 2010-12-21
    • 2018-04-13
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多