Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/64.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Mysql 对于最后一个电子邮件地址,发送多封电子邮件失败_Mysql_Vb.net - Fatal编程技术网

Mysql 对于最后一个电子邮件地址,发送多封电子邮件失败

Mysql 对于最后一个电子邮件地址,发送多封电子邮件失败,mysql,vb.net,Mysql,Vb.net,我们在VB.net中遇到了一个问题,它自动将带有文本文件附件的电子邮件发送到多个电子邮件地址。 奇怪的是,如果我们将邮件发送给两个人,那么第一个人会收到邮件,而第二个人不会。 如果我们添加三个电子邮件地址,则前两个电子邮件地址会收到电子邮件,但第三个电子邮件地址不会收到。当添加更多电子邮件地址时,它会继续这样做。 此外,在第二次执行脚本时,电子邮件确实会发送给所有收件人。确切地说,所有收件人仅在交替执行脚本时接收电子邮件。 这是否与邮件服务器等占用的时间有关? 最后,我们所做的是对最后一个电子邮

我们在VB.net中遇到了一个问题,它自动将带有文本文件附件的电子邮件发送到多个电子邮件地址。 奇怪的是,如果我们将邮件发送给两个人,那么第一个人会收到邮件,而第二个人不会。 如果我们添加三个电子邮件地址,则前两个电子邮件地址会收到电子邮件,但第三个电子邮件地址不会收到。当添加更多电子邮件地址时,它会继续这样做。 此外,在第二次执行脚本时,电子邮件确实会发送给所有收件人。确切地说,所有收件人仅在交替执行脚本时接收电子邮件。 这是否与邮件服务器等占用的时间有关? 最后,我们所做的是对最后一个电子邮件地址运行sendmail命令两次。我知道这不是一个永久的解决办法。 非常感谢您的帮助。 提前谢谢

    public void Main()
    {
        SmtpClient client = new SmtpClient("1.1.1.1", 25);

        client.DeliveryMethod = SmtpDeliveryMethod.Network;

        client.Credentials = new NetworkCredential("support", "support");

        MailMessage EM1= new MailMessage("support@domain.com", "user1@domain.com ",
           "This is my subject" + " " + "  ", "Hello,");

        EM1.Attachments.Add(new Attachment(@"F:\WebData\TxtFiles\1.txt"));
        client.Send(EM1);

        Dts.TaskResult = (int)ScriptResults.Success;


        MailMessage EM2 = new MailMessage("support@domain.com", "user2@domain.com",
           "This is my subject" + " " + " ", "Hello,");

        EM2.Attachments.Add(new Attachment(@"F:\WebData\TxtFiles\1.txt"));
        client.Send(EM2);

        Dts.TaskResult = (int)ScriptResults.Success;

        MailMessage EM3 = new MailMessage("support@domain.com", "user3@domain.com",
        "This is my subject" + " " + " ", "Hello,");

        EM3.Attachments.Add(new Attachment(@"F:\WebData\TxtFiles\1.txt"));
        client.Send(EM3);
        client.Send(EM3);

        Dts.TaskResult = (int)ScriptResults.Success;

    }
}

}

您应该首先检查邮件服务器的日志。他们应该告诉您提交的消息发生了什么(接受/拒绝、下一跳传递等)

然而,将同一封邮件多次发送给不同的收件人无论如何都是不好的做法。这是邮件服务器的工作。仅为所有预期收件人提交一次邮件。可以使用逗号分隔字符串指定所有收件人:

MailMessage EM = new MailMessage("support@example.com", _
  "user1@example.com,user2@example.com,user3@example.com", _
  "This is my subject", "Hello,");

EM.Attachments.Add(new Attachment(@"F:\WebData\TxtFiles\1.txt"));
client.Send(EM);
MailMessage EM=新的MailMessage(“support@example.com", _
"user1@example.com,user2@example.com,user3@example.com", _
“这是我的主题”,“你好,”);
添加(新附件(@“F:\WebData\TxtFiles\1.txt”);
client.Send(EM)
或添加其他收件人,如下所示:

MailMessage EM = new MailMessage("support@example.com", _
  "user1@example.com", "This is my subject", "Hello,");

EM.To.Add("user2@example.com");
EM.To.Add("user3@example.com");

EM.Attachments.Add(new Attachment(@"F:\WebData\TxtFiles\1.txt"));
client.Send(EM);
MailMessage EM=新的MailMessage(“support@example.com", _
"user1@example.com这是我的主题,你好;
EM.To.Add(“user2@example.com");
EM.To.Add(“user3@example.com");
添加(新附件(@“F:\WebData\TxtFiles\1.txt”);
client.Send(EM)
如果您不想让收件人知道其他收件人,请将邮件发送给默认收件人(例如发件人地址),并将其他收件人添加为密件抄送地址:

MailMessage EM = new MailMessage("support@example.com", _
  "support@example.com", "This is my subject", "Hello,");

EM.Bcc.Add("user1@example.com");
EM.Bcc.Add("user2@example.com");
EM.Bcc.Add("user3@example.com");

EM.Attachments.Add(new Attachment(@"F:\WebData\TxtFiles\1.txt"));
client.Send(EM);
MailMessage EM=新的MailMessage(“support@example.com", _
"support@example.com这是我的主题,你好;
EM.Bcc.Add(“user1@example.com");
EM.Bcc.Add(“user2@example.com");
EM.Bcc.Add(“user3@example.com");
添加(新附件(@“F:\WebData\TxtFiles\1.txt”);

client.Send(EM)看起来像VB.net代码。VB.net和VBScript是不同的语言。感谢您指出。我对这个(甚至是这个项目)完全陌生。代码是由一位同事编写的。我应该在另一个标签下标记这个吗?我已经冒昧地为您修复了这些标签。哎呀。。非常感谢。有没有办法避免第二次使用代码行“client.Send(EM3);”呢?