大佬教程收集整理的这篇文章主要介绍了已与其底层 RCW 分离的 COM 对象无法使用 Microsoft.Office.Interop.Outlook 使用,大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
我面临以下问题
COM object that has been separated from its underlying RCW cAnnot be used.'
System.Runtime.Interopservices.InvalIDComObjectException: COM object that has been separated from its underlying RCW cAnnot be used.
at System.stubHelpers.stubHelpers.GetCOMIPFromrCW(Object obJsrc,IntPtr pCPCMD,IntPtr& ppTarget,Boolean& pfNeedsReleasE)
at Microsoft.office.Interop.outlook._Mailitem.get_Subject()
以下代码:
var mail = inspectorWrapper.Mailitem;
showcaseModel.Subject = mail?.Subject;
showcaseModel.title = mail?.Subject;
我怎样才能避免这种异常? 我应该用 @H_297_5@marshal.ReleaseComObject(mail) 释放邮件对象吗? ?
这是一个很好的指标,表明您需要检查加载项的代码并检查所有 @H_297_5@marshal.ReleaseComObject 语句。
如果您的加载项代码中没有此类语句,则表明您正尝试在代码中使用来自 OOM 的不可用对象。例如,打开一个新的检查器窗口,您可以在其中检索对邮件项的对象引用并将其保存在代码中。但是用户可以发送此类项目,因此您的对象引用与底层 COM 对象分离。它只是不再有效 - 该项目已移动到另一个文件夹(或删除,如果在项目上设置了 deleteAfterSubmit
属性)。
建议相同 - 检查您的源代码。
以上是大佬教程为你收集整理的已与其底层 RCW 分离的 COM 对象无法使用 Microsoft.Office.Interop.Outlook 使用全部内容,希望文章能够帮你解决已与其底层 RCW 分离的 COM 对象无法使用 Microsoft.Office.Interop.Outlook 使用所遇到的程序开发问题。
如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。
本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。