在带有Office 2016的Windows 10上运行
来自VBA(MS Word):
参考Redemption.dll
运行以下代码将创建会话并返回帐户名称
Dim r As New RDOSession
r.Logon
Debug.Print r.Accounts.Item(1).Name
r.Logoff
Set r = Nothing
来自Visual Studio(VS)2015 VB.NET项目:(VS2010和VS2013相同)
参考Redemption.dll
运行以下代码......
Dim sess As New Redemption.RDOSession
sess.Logon()
MessageBox.Show(sess.Accounts(1).Name)
sess.Logoff()
...在尝试创建RDOSession对象时生成此异常。
RedemptionTest.exe中0x0F304797(OLMAPI32.DLL)抛出异常:0xC0000005:访问冲突写入位置0x00000000。
事件日志报告:
错误应用程序名称:RedemptionTest.exe,版本:1.0.0.0,时间戳:0x587e37c6
错误模块名称:olmapi32.dll,版本:16.0.6965.6571,时间戳:0x58606a5b
例外代码:0xc0000409
故障偏移:0x00134797
错误进程id:0x4ce0
故障应用程序启动时间:0x01d270d888a9b2ff
错误应用程序路径:C:\ Redox \ Test \ RedemptionTest \ RedemptionTest \ bin \ x86 \ Debug \ RedemptionTest.exe
错误模块路径:C:\ Program Files(x86)\ Microsoft Office \ Root \ Office16 \ olmapi32.dll
报告编号:7c4170c7-b227-4839-b956-3b51c52920c0
错误包全名:
故障包相关申请ID:
但是,如果我为VB项目创建安装文件并将其安装在我的机器上,它将运行已安装的应用程序并返回帐户名称,没有任何例外。
这曾经很好用。在安装Office 2016之后,我不记得它是否通过VS工作,自升级到Win 10后它肯定没有用。
有关如何通过VS让它工作的任何建议?非常感谢。
赎回Ver:5.0
答案 0 :(得分:0)
根据德米特里的评论:
Outlook 2016 C2R打破了MAPI系统的加载方式 - 您需要拥有最新版本(5.12,或至少5.11)才能支持Outlook 2016.
安装和使用Redemption 5.12解决了从Visual Studio运行的问题。
谢谢德米特里。