MS Access中的Outlook兑换错误:ActiveX组件无法创建对象

时间:2018-06-27 13:53:45

标签: vba ms-access ms-access-2010 outlook-2010 outlook-redemption

代码:

    Dim Application As Object, namespace As Object
    Set Application = CreateObject("Outlook.Application")
    Set namespace = Application.GetNamespace("MAPI")
    namespace.Logon

    Set safeItem = CreateObject("Redemption.SafeMailItem") ' Error here!

通常,此代码在我的大多数机器上都可以正常工作-但在这种情况下,如果需要,我可以在MS Access 2010(64位)中运行此代码。

但是在分配safeItem的行中,出现错误“ ActiveX组件无法创建对象”。这到底是什么意思?为什么不能创建对象?对“兑换”的引用似乎还可以/没有显示为“ MISSING”或其他任何内容。

我用Google搜索此错误,由于该错误含糊不清,似乎有许多可能的原因。此特定实例是否有众所周知的原因?

2 个答案:

答案 0 :(得分:1)

确保Outlook的精确性使Access的精确性前进-有关更多详细信息,请参见http://www.dimastr.com/redemption/faq.htm#ErrorCreatingRedemptionObject

答案 1 :(得分:0)

creatobject 调用可以抛出各种错误,包括自动化错误 (-2146232576) 等。根据我的经验,如果某个软件在一台 PC 上运行良好,而在另一台 PC 上运行良好,并且错误是由 creatobject 调用引起的,那么罪魁祸首通常是缺少或未正确注册的 DLL。

我发现的解决它的快速方法(尤其是在 Windows 10 中)是打开 Windows 功能,如果未选择 .NetFramework 3.5,则选择它并单击确定。如果选择了 .Netframework 3.5,则取消选择它并单击确定。重新启动,返回到 Windows 功能,并重新选择 .NetFramework 3.5 并单击确定。这将导致 Windows 安装和注册所有必需的 DLL 和其他组件。

你应该在那之后。