我正在使用 c# 处理 VSTO Outlook AddIn 项目,并尝试使用以下方法在 Outlook 中添加 DocumentItem - protected void CreateWordDocument(string strPhysicalFilePath, Outlook.Folder ParentFolder) { Outlook.DocumentItem objDocItem = null; Outlook.Attachment objAtt = null; try { objDocItem = ParentFolder.Items.Add("IPM.Document"); objAtt = objDocItem.Attachments.Add(strPhysicalFilePath, ); objDocItem.Subject = objAtt.FileName; string strFileType = Path.GetExtension(strPhysicalFilePath, ); switch (strFileType) { case ".doc": case ".docx": objDocItem.MessageClass = "IPM.Document.Word.Document.8"; break; case ".xls": case ".xlsx": objDocItem.MessageClass = "IPM.Document.Excel.Sheet.8"; break; case ".pps": case ".ppt": case ".pptx": objDocItem.MessageClass = "IPM.Document.PowerPoint.Show.8"; break; case ".txt": objDocItem.MessageClass = "IPM.document.txtfile"; break; } objDocItem.Save(); } catch (Exception ex) { ErrorLog.WriteError("ClassName", "CreateWordDocument()", ex.Message); } finally { if (objDocItem != null) Marshal.ReleaseComObject(objDocItem); if (objAtt != null) Marshal.ReleaseComObject(objAtt); } }但在“ objDocItem = ParentFolder.Items.Add("IPM.Document"); 行出现以下错误VSTO Outlook 插件中的 Outlook.Items.Add() 中的操作中止(来自 HRESULT 的异常:0x80004004 (E_ABORT))。相同的代码在我的计算机上运行良好,但在另一台计算机上出现此错误。
2 回答
摇曳的蔷薇
TA贡献1793条经验 获得超6个赞
我找到了解决方案 - 目标平台 32 位或 64 位存在问题。我在那里遇到异常的机器安装了 64 位 Office,我的 Outlook 添加安装程序是在 32 位平台上构建的。我已经使用 64 位目标平台重新编译并构建了 Outlook 添加设置并安装在该机器上。现在它工作正常。
- 2 回答
- 0 关注
- 814 浏览
添加回答
举报
0/150
提交
取消