32位程序搭配64位Outlook时Redemption组件异常排查求助
Redemption COM组件跨位数运行异常排查求助
我们遇到了Redemption COM组件的异常情况:两台配置相近的服务器运行结果不一致,目前难以排查解决(后续会补充更多信息)。
具体场景:
- 环境:两台Windows Server 2022服务器,部署在RDS环境,均运行64位Microsoft® Outlook® LTSC MSO (16.0.14332.20587)
- 应用:32位Appeon PowerBuilder程序,搭配32位Outlook Redemption组件读取Outlook邮件
- 问题:一台服务器上能成功创建对象并正常读取收件箱;另一台则抛出PowerBuilder通用OLE错误“-3 -- 对象无法创建”
矛盾点:根据Redemption的位数相关说明,32位应用/DLL本不应搭配64位Outlook正常工作,但其中一台服务器却运行正常;原本正常的服务器现在出现问题,推测是系统更新导致,但无法确定具体原因。
已尝试的操作:
- 在C#中调试应用:严格遵循位数匹配规则,64位Redemption搭配64位应用可正常运行,32位Redemption搭配32位应用则无法运行
- 重新注册Redemption组件:试过最新版(6.4.0.6324)和之前可用的旧版本(5.5.0.3218),问题未解决
- 排查连接环节:与Outlook的连接似乎成功,但调用
li_result = iole_olSafeApp.ConnectToNewObject("Redemption.SafeMailItem")时失败
请问有哪些有效的调试/排查方法?
内容的提问来源于stack exchange,提问作者Tom Kuilder
相关产品推荐
相关产品推荐

