将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只是告诉我对它进行类型转换。对于如何解决这个问题,有任何的建议吗?     
已邀请:
我不认为类型可以被转换或转换。只需阅读Outlook附件的内容并将其写入Mail.Attachment。     
我尝试了这个代码,它工作:
htmbody = "<HTML><BODY>"
htmbody = htmbody + "<table border=0>"
htmbody = htmbody + "<tr>"
htmbody = htmbody + "<td><img src=C:tempfilenameplace.png></td>"
    

要回复问题请先登录注册