将Microsoft.Office.Interop.Outlook.Attachment转换为c#中的System.Net.Mail.Attachment
我正在编写Outlook 2007的插件,当我尝试序列化附件时遇到了问题。尽管System.Net.Mail附件具有可用于序列化数据的ContentStream,但Microsoft.Office.Interop.Outlook附件却没有。不幸的是,我可以直接从Outlook获得的唯一类型的附件是Microsoft.Office.Interop.Outlook。我搜索了一下,但却找不到类似的东西。
MailItem item = getMailObj(e);
String dataSend = serializeAttachment((System.Net.Mail.Attachment)item.Attachments[1]);
正如你所看到的,我尝试了对初始附件进行类型转换,但是我得到了一个无效的强制转换异常:
无法转换类型的COM对象
'System .__ ComObject'到类类型
'System.Net.Mail.Attachment'。
表示COM的类型的实例
组件无法转换为类型
不代表COM组件;
但是它们可以转换为接口
只要底层的COM
component支持QueryInterface
调用接口的IID。
我也不能放
System.Net.Mail.Attachment newAtt = item.Attachments[1];
因为VisualStudio 2010只是告诉我对它进行类型转换。对于如何解决这个问题,有任何的建议吗?
没有找到相关结果
已邀请:
2 个回复
破弯
碉罕城爸