如何获取Outlook邮件项目的大小?

时间:2012-02-16 09:27:51

标签: c# vsto outlook-addin outlook-2007

为Outlook 2007编写Outlook加载项。这是一个VSTO 3.0,C#加载项。我在加载项中捕获发送事件,然后检查一些电子邮件属性(正在发送的内容),并根据该显示提醒一些。

当我尝试使用mailItem.Size获取电子邮件的总大小时,它总是返回0而电子邮件的实际大小不是0.如果我保存电子邮件(mailitem.Save())则mailItem.Size返回正确的邮件大小。 有没有人知道这种行为背后的原因。有没有其他方法可以获得电子邮件大小?

2 个答案:

答案 0 :(得分:2)

是的,这是Outlook中的默认行为 我建议您在发送之前保存它(MailItem.Save)。
保存电子邮件会将其放在草稿文件夹中...但是谁在乎,因为您现在将检查其大小(MailItem.Size)并发送它(MailItem.Send)。

答案 1 :(得分:1)

  
    
      

有没有人知道这种行为背后的原因。有没有其他方法可以获得电子邮件大小?

    
  

AFAIK,这是Outlook中的默认行为。在保存/发送之前,您无法获得大小。

但是,如果有帮助,您可以检查附件大小或身体长度吗?