URI-Formate werden nicht unterstützt

Ich bin im Grunde macht eine Masse E-Mail-Absender in C# mit Microsoft Visual Studio, die Idee ist, dass es verwendet echte E-Mail-Konten via SMTP zum senden von E-Mails, damit Sie nicht als spam markiert, aber ich erhalte die Fehlermeldung:

URI formats are not supported. 

Grundsätzlich der folgende code ruft die Liste der E-Mail-Konten von meiner website wirft aber den oben genannten Fehler.

String[] saUsernames = File.ReadAllLines(@"http://mywebsite.com/test/accounts.txt");

Ich habe versucht, laden Sie die Datei lokal, und es funktioniert gut, so dass ich kann nicht herausfinden, was das Problem ist, wer irgendwelche Ideen, wie ich bin gut und wirklich verwirrt

edit: hier ist das gesamte Skript als etwas anderes kann die Ursache des Fehlers, ive entfernt einige der links zu meiner Website,usw. als ein Projekt in der Entwicklung und ich will nicht Weg zu geben viele Hinweise

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using System.Net;
using System.Net.Mail;
using System.Threading;
using System.IO;

namespace NecroBomber
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
        }

        int iTimeOutValue = 100;
        int iSentAmount = 0;
        SmtpClient client = new SmtpClient();
        MailMessage mail = new MailMessage();
        String[] saUsernames = File.ReadAllLines(@"http://example.com/accounts.txt");
        WebClient wcUpdates = new WebClient();
        string sMasterPassword = "testpassword";
        string sLastUsername = "";
        int iTimeOutWebRequest = 0;

        private void btnClick(object sender, EventArgs e)
        {
            Button btnCurrent = ((Button)sender);
            if (btnCurrent.Tag.ToString() == "SendMail")
            {
                prbSentStatus.Maximum = ((int)nudAmount.Value * saUsernames.Length);
                Thread tStart = new Thread(SendMail);
                tStart.Start();
            }
            else if (btnCurrent.Tag.ToString() == "AddAccount")
            {
                AddNewAccount();
            }
            else if (btnCurrent.Tag.ToString() == "Update")
            {
                try
                {
                    if (wcUpdates.DownloadString(@"http://example.com/version.txt") != "1.0.0")
                    {
                        if (dlgSaveUpdate.ShowDialog() == DialogResult.OK)
                        {
                            wcUpdates.DownloadFile(@"http://example.com/new.exe", dlgSaveUpdate.FileName);
                        }
                    }
                    else
                    {
                        MessageBox.Show("Your version is up to date!", "Information!");
                    }
                }
                catch
                {

                }
            }
        }

        private void SendMail()
        {
            int iToSend = Convert.ToInt32(nudAmount.Value);
            for (int i = 0; i < saUsernames.Length; i++)
            {
                GrabMailDetails(i);
                client.Credentials = new NetworkCredential(saUsernames[i], sMasterPassword);
                if (saUsernames[i] != sLastUsername)
                {
                    if (saUsernames[i].EndsWith("@yahoo.com"))
                    {
                        client.Host = "smtp.mail.yahoo.com";
                        client.Port = 587;
                        client.EnableSsl = false;
                    }
                    else if (saUsernames[i].EndsWith("@gmail.com"))
                    {
                        client.Host = "smtp.gmail.com";
                        client.Port = 25;
                        client.EnableSsl = true;
                    }
                    else if (saUsernames[i].EndsWith("@hotmail.co.uk"))
                    {
                        client.Host = "smtp.live.com";
                        client.Port = 587;
                        client.EnableSsl = true;
                    }
                    else if (saUsernames[i].EndsWith("@outlook.com"))
                    {
                        client.Host = "smtp.live.com";
                        client.Port = 587;
                        client.EnableSsl = true;
                    } 
                    else if (saUsernames[i].EndsWith("@hotmail.com"))
                    {
                        client.Host = "smtp.live.com";
                        client.Port = 587;
                        client.EnableSsl = true;
                    }
                    else if (saUsernames[i].EndsWith("@aol.co.uk"))
                    {
                        client.Host = "smtp.aol.com";
                        client.Port = 587;
                        client.EnableSsl = true;
                    } 
                    else if (saUsernames[i].EndsWith("@aol.com"))
                    {
                        client.Host = "smtp.aol.com";
                        client.Port = 587;
                        client.EnableSsl = true;
                    }
                }
                else
                {

                }
                sLastUsername = saUsernames[i];

                for (int x = 0; x < iToSend; x++)
                {
                    try
                    {
                        client.Send(mail);
                        iSentAmount++;
                    }
                    catch
                    {
                        MessageBox.Show("Maximum emails today sent from this SMTP server has been reached.\nAccount name: " + sLastUsername, "Error!");
                        goto JMP;
                    }
                }
                JMP: ;
            }

        }

        private void GrabMailDetails(int count)
        {
            try
            {
                mail = new MailMessage();
                mail.Body = tbBody.Text;
                mail.Subject = tbSubject.Text;
                mail.From = new MailAddress(saUsernames[count]);
                mail.To.Add(tbTarget.Text);
                {
                                }
                if (rbHigh.Checked)
                {
                    mail.Priority = MailPriority.High;
                }
                else if (rbLow.Checked)
                {
                    mail.Priority = MailPriority.Low;
                }
                else if (rbNorm.Checked)
                {
                    mail.Priority = MailPriority.Normal;
                }
            }
            catch
            {

            }
        }

        private void AddNewAccount()
        {
            String[] saCurrentAccounts = File.ReadAllLines(@"Accounts.txt");
            string sAddNewAccount = "";
            for (int i = 0; i < saCurrentAccounts.Length; i++)
            {
                sAddNewAccount += saCurrentAccounts[i] + Environment.NewLine;
            }

        }

        private void timeUpdate_Tick(object sender, EventArgs e)
        {
            prbSentStatus.Value = iSentAmount;
            lblEmailSentCount.Text = "Emails Sent: " + iSentAmount;
            iTimeOutWebRequest++;
            if (iTimeOutWebRequest == iTimeOutValue)
            {

            }
        }


        private void Form1_Load(object sender, EventArgs e)
        {
            timeUpdate.Start();
            lblMultiple.Text = "x " + saUsernames.Length;
            this.Text = "test - " + Environment.UserName;
      }

        private void pictureBox1_Click(object sender, EventArgs e)
        {

        }

        private void button2_Click(object sender, EventArgs e)
        {
          if (wcUpdates.DownloadString(@"update.com/version") != "1.0.0")
                    {
                        if (dlgSaveUpdate.ShowDialog() == DialogResult.OK)
                        {
                            MessageBox.Show("Updating LulzBomber. Please wait a few minutes", "Information!");
                            wcUpdates.DownloadFile(@"update.com/version", dlgSaveUpdate.FileName);
                        }
                    }
                    else
                    {
                        MessageBox.Show("Your version is up to date!", "Information!");
                    }
             }

        private void button3_Click(object sender, EventArgs e)
        {
            MessageBox.Show("Created by ***", "About");
        }

      }
    }
  • Mit mehr edle Ziel solcher Beispielcode, der zeigt das problem sein könnte, ok. Mit Ihr man würde besser zeigen, Rechte Anstrengung ist ein gutes Beispiel - bitte prüfen Sie, out sscce.org zur Verbesserung Ihrer Frage.
  • Die Fehlermeldung scheint ziemlich klar und kurz zu mir; Sie können Sie nicht verwenden, die URI-Pfade mit der File Klassen. Sie benötigen WebClient.
Schreibe einen Kommentar