forループを使用して同じpdfドキュメントを含む複数の電子メールを送信したい場合は、 最初の電子メールアドレスが常に電子メールを受信しますが、次の電子メールアドレスにエラーが発生します。別のプロセスで使用されているため、ファイル 'file \ path \ file.pdf'にアクセスしてください。同じ添付ファイルを含む複数の電子メールを送信する
foreach (GridViewRow Row in GridView1.Rows)
{
MailMessage mail = new MailMessage();
SmtpClient SmtpServer = new SmtpClient(smtpServer);
mail.From = new MailAddress(Sender);
mail.To.Add(new MailAddress(to));
mail.Subject = Subject;
mail.Body = TextBox2.Text;
Attachment attachment;
attachment = new Attachment(Server.MapPath("~/temp/file.pdf"));
mail.Attachments.Add(attachment);
SmtpServer.Port = SmtpPort;
SmtpServer.Credentials = new System.Net.NetworkCredential(Sender, Password);
SmtpServer.EnableSsl = true;
try
{
SmtpServer.Send(mail);
sent++;
}
catch (Exception ex)
{
Label1.Visible = true;
Label1.Text = ex.Message.ToString();
if (ex.InnerException != null)
{
Label1.Text = ex.InnerException.ToString();
Label1.Visible = true;
}
}
Label2.Text = "Sent: " + sent + "Failed: " + failed + " Without Email:" + NoEmail;
Label2.Visible = true;
}
関連コードを投稿してください。 –
最初のメールからMailAttachmentを破棄しないでください。 – JDandChips
にコード –