vs c# - outlook中附加文件的问题

时间:2012-05-03 14:45:26

标签: c# visual-studio-2008

我在将文件附加到Outlook时遇到问题。

我有这个代码,我可以附加文件,然后使用我的Outlook发送它(没有凭据,只是在Windows中使用我的配置文件凭证)

private void tsbOk_Click(object sender, EventArgs e)
{
  Outlook.Application oApp = new Outlook.Application();
  Outlook.MailItem email = (Outlook.MailItem)(oApp.CreateItem(Outlook.OlItemType.olMailItem));
  ((Outlook.MailItem)email).Importance = Outlook.OlImportance.olImportanceHigh;
  ((Outlook.MailItem)email).To = "myemail@maydomain.com";
  //((Outlook.MailItem)email).CC = "myemail@maydomain.com";  
  ((Outlook.MailItem)email).Subject = lblUser.Text + " - " + lblDepartment.Text;
  **((Outlook.MailItem)email).Attachments.Add(lblAdd.Text.ToString(), Outlook.OlAttachmentType.olByValue, Type.Missing, Type.Missing); **
  ((Outlook.MailItem)email).Body = lblFail.Text + "\n" + "\n" + lblDescription.Text + "\n" + "\n" + lblComment.Text;
  ((Outlook.MailItem)email).Send();
  {
    MessageBox.Show("Su solicitud ha sido enviada." + "\n" + "Gracias por contactar ServiceDesk BA.");
    Close();
  }
}

我将此部分用于文件,lblAdd.text是我获取文件路径的地方:

((Outlook.MailItem)email).Attachments.Add(lblAdd.Text.ToString(),Outlook.OlAttachmentType.olByValue,Type.Missing,Type.Missing);

问题是当这条路径为空时,由于我更改了这部分代码,因此在没有附件的情况下发送电子邮件是不可行的。 如何为此添加“exeption”

非常感谢您的帮助。 此致

1 个答案:

答案 0 :(得分:0)

所以你想知道文件是否存在?

使用:

// set up email

if(File.Exists(lblAdd.Text))
{
  // add attachment
  email.Attachments.Add(...);
}

// send