代码:
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搜索此错误,由于该错误含糊不清,似乎有许多可能的原因。此特定实例是否有众所周知的原因?
答案 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 和其他组件。
你应该在那之后。