迁移邮箱至Exchange2016后Redemption报"Microsoft Exchange不可用"错误
问题背景
- 迁移部分用于B2B业务流程的邮箱从Exchange 2010到Exchange 2016后,涉事应用出现运行故障
- 该应用依赖Redemption.dll 5.0.0.2174版本,核心功能为访问邮箱、提取附件、将已处理邮件移动至“ELABORATED”子文件夹,原Windows Server 2008 R2环境下运行正常
报错信息
Error: Microsoft Exchange is not available. Either there are network problems or the Exchange server is down for maintenance.
Component: Microsoft Exchange Information Store
ulLowLevelError: 2147746069
ulContext: 1318
at Redemption.IRDOSession.GetSharedMailbox(Object NameOrAddressOrObject)
at EmailActivatorLib.MapiExchangeProxy.GetInbox(MapiDelegate mailbox)
问题解答
1. Redemption库是否需要在同一服务器上安装Outlook客户端才能运行?
不需要。Redemption可独立于Outlook运行,它依赖系统中的MAPI组件(如Exchange MAPI CDO或Windows自带MAPI),但部分旧版本对MAPI环境有特定要求,需确保服务器安装了兼容的MAPI组件包。
2. Redemption库是否仅支持MAPI协议?能否通过IMAP访问邮箱?
Redemption核心基于MAPI协议开发,你使用的5.0.0.2174旧版本仅支持MAPI。新版本虽支持EWS或REST API,但IMAP并非Redemption的原生支持方式;若要改用IMAP,必须修改应用代码,不符合你“不修改软件”的需求。
3. 若找到库文件,仅更新版本是否可行?是否需要重新注册DLL?
仅更新Redemption.dll版本可行,但必须重新注册DLL。需以管理员权限打开命令行,执行以下命令(替换为实际文件路径):
regsvr32 "C:\实际路径\Redemption.dll"
同时要确保新版本DLL与应用的位数(32/64位)完全匹配,否则会出现注册失败或运行异常。
4. 首个兼容Exchange 2016的Redemption版本是哪个?或推荐使用哪个版本?
Redemption从v5.1版本开始正式支持Exchange 2016,推荐使用v5.1及以上的稳定版本(如v5.1.0.3300或更高更新版本),这些版本修复了与Exchange 2016的MAPI层兼容性问题,能适配新环境。
内容的提问来源于stack exchange,提问作者MrOperator

