0

在我的项目中,我需要附加多个文件来发送邮件,我正在这样做

        if (fDialog.ShowDialog() == DialogResult.OK)
        {
            textBox6.Text += fDialog.FileName.ToString() + ";";
        }

在这里,我将文件附加到 textbox6

我使用“;”分隔不同附件文件的路径 然后我将附件的这些路径分开如下,然后发送。

         System.Net.Mail.Attachment attachment;
        foreach (string m in textBox6.Text.Split(';'))
        {
            attachment = new System.Net.Mail.Attachment(m);
            message.Attachments.Add(attachment);
        }

这种方法对我不起作用。但是,当我使用以下代码发送带有单个附件的邮件时,它就可以正常工作

        System.Net.Mail.Attachment attachment;
        attachment = new System.Net.Mail.Attachment(textBox6.Text.ToString());
        message.Attachments.Add(attachment);

有人请帮忙。我一直在工作这一天,无法弄清楚。

4

4 回答 4

1

我希望这能彻底解决你的问题http://archive.msdn.microsoft.com/CSharpGmail

于 2012-09-12T17:13:45.537 回答
0

功能应该是:

foreach (string m in textBox6.Text.Split(';'))
{
   System.Net.Mail.Attachment attachment = new System.Net.Mail.Attachment(m);
   message.Attachments.Add(attachment);
}

这将解决您的问题。

于 2012-09-10T17:46:47.687 回答
0

尝试使用文件流而不是文件上的链接:

message.Attachments.Add(new Attachment(attachmentFileStream, fileNameOnly));
于 2012-09-10T17:52:39.570 回答
-1

然后创建一个附件列表框-

                if (Attachmentlistbox.Items.Count != 0)
                {
                    for (int i = 0; i < Attachmentlistbox.Items.Count; i++)
                        mailMessage.Attachments.Add(new Attachment(Attachmentlistbox.Items[i].ToString()));
                }
于 2014-12-30T12:17:14.737 回答