Autor Beitrag
sharpx
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 51



BeitragVerfasst: Do 01.01.09 16:53 
Hallo liebe Community,

Folgender Code gibt mir zig hundert Fehler:
ausblenden C#-Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
22:
23:
24:
25:
26:
27:
28:
29:
30:
using System;
using System.IO;
using System.Web;
using System.Net.Mail;

namespace mailtest
{
    class Program
    {
        public static void Main(string[] args)
        {
            MailMessage Message = new MailMessage();
                    string test = "test";
                    Message.From = test;
                    Message.To = "fendalex@vol.at";
                    Message.Subject = "test";
                    Message.Body = "test";
                    Message.Fields.Add("http://schemas.microsoft.com/cdo/configuration/smtpauthenticate""1");//basic authentication
                    Message.Fields.Add("http://schemas.microsoft.com/cdo/configuration/sendusername""my_username_here"); //set your username here
                    Message.Fields.Add("http://schemas.microsoft.com/cdo/configuration/sendpassword""super_secret");//set your password here

                    Console.WriteLine("E-Mail übertragen...");
                    SmtpMail.SmtpServer = "pop.gmx.net";
                    SmtpMail.Send(Message);
                    Console.WriteLine("E-Mail wurde übertragen.");
                    Console.Read();

        }
    }
}


Zitat:

Der Typ string kann nicht implizit in System.Net.Mail.MailAddress konvertiert werden. (CS0029) - C:\Dokumente und Einstellungen\lipo\Eigene Dateien\SharpDevelop Projects\mailtest\Program.cs:19,21
Der Typ string kann nicht implizit in System.Net.Mail.MailAddressCollection konvertiert werden. (CS0029) - C:\Dokumente und Einstellungen\lipo\Eigene Dateien\SharpDevelop Projects\mailtest\Program.cs:20,19
Für die Eigenschaft oder den Indexer System.Net.Mail.MailMessage.To kann keine Zuweisung ausgeführt werden. Sie sind schreibgeschützt. (CS0200) - C:\Dokumente und Einstellungen\lipo\Eigene Dateien\SharpDevelop Projects\mailtest\Program.cs:20,6
System.Net.Mail.MailMessage enthält keine Definition für Fields. (CS0117) - C:\Dokumente und Einstellungen\lipo\Eigene Dateien\SharpDevelop Projects\mailtest\Program.cs:23,14
System.Net.Mail.MailMessage enthält keine Definition für Fields. (CS0117) - C:\Dokumente und Einstellungen\lipo\Eigene Dateien\SharpDevelop Projects\mailtest\Program.cs:24,14
System.Net.Mail.MailMessage enthält keine Definition für Fields. (CS0117) - C:\Dokumente und Einstellungen\lipo\Eigene Dateien\SharpDevelop Projects\mailtest\Program.cs:25,14
Der Name SmtpMail ist im aktuellen Kontext nicht vorhanden. (CS0103) - C:\Dokumente und Einstellungen\lipo\Eigene Dateien\SharpDevelop Projects\mailtest\Program.cs:28,6
Der Name SmtpMail ist im aktuellen Kontext nicht vorhanden. (CS0103) - C:\Dokumente und Einstellungen\lipo\Eigene Dateien\SharpDevelop Projects\mailtest\Program.cs:29,6


Dann ahbe ich mal folgendes installiert:
.net framework 3.5 sp1 + neuste sharpdev. version und dsa ding kompiliert ohne fehler

ausblenden C#-Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
public static void Main(string[] args)
        {
            MailMessage Message = new MailMessage();
                    string test = "test";
                    Message.From = test;
                    Message.To = "a.f@vol.at";
                    Message.Subject = "test";
                    Message.Body = "test";
                    Message.Fields.Add("http://schemas.microsoft.com/cdo/configuration/smtpauthenticate""1");//basic authentication
                    Message.Fields.Add("http://schemas.microsoft.com/cdo/configuration/sendusername""user"); //set your username here
                    Message.Fields.Add("http://schemas.microsoft.com/cdo/configuration/sendpassword""pass");//set your password here

                    Console.WriteLine("E-Mail übertragen...");
                    SmtpMail.SmtpServer = "pop.vol.at";
                    SmtpMail.Send(Message);
                    Console.WriteLine("E-Mail wurde übertragen.");
                    Console.ReadLine();

        }


Gibt mir jedoch folgende Fehler:
Zitat:

System.Web.HttpException: Der Transport konnte keine Verbindung zum Server herstellen.
---> System.Reflection.TargetInvocationException: Ein Aufrufziel hat einen Ausnahmefehler verursacht. ---> System.Runtime.InteropServices.COMException: Der Transport konnte keine Verbindung zum Server herstellen.

bei LateBoundAccessHelper.CallMethod
bei CdoSysHelper.Send
bei System.Web.Mail.SmtpMail.Send
bei mailtest.Program.Main in c:\Dokumente und Einstellungen\lipo\Desktop\SharpDevelop Projects\mailtest\Program.cs:Zeile 29


Ich sehe da aber keinen Sinn, da es möglich ist auf SMTP und POP von ausen zuzugreifen!
Zitat:

telnet pop.vol.at 110
+OK vol.at POP3 Server 4.1.8 bereit <26140872.1230637429@stalker1.tele.net>

telnet pop.vol.at 25
Verbindung ok




Danke für Eure Hilfe!

Moderiert von user profile iconUGrohne: Code- durch C#-Tags ersetzt
jaenicke
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 19272
Erhaltene Danke: 1740

W11 x64 (Chrome, Edge)
Delphi 11 Pro, Oxygene, C# (VS 2022), JS/HTML, Java (NB), PHP, Lazarus
BeitragVerfasst: Do 01.01.09 16:58 
Hallo und :welcome:!

Was mir auffällt ist, dass du keinen Port festlegst. Ich gehe davon aus, dass das gemacht werden muss.

Wie steht sicherlich in der Doku.


// EDIT:
Nein, muss man offenbar nicht. Das einzige was mir in der Doku zunächst sofort aufgefallen ist, ist, dass SmtpMail veraltet ist und nicht mehr verwendet werden sollte.
UGrohne
ontopic starontopic starontopic starontopic starontopic starontopic starofftopic starofftopic star
Veteran
Beiträge: 5502
Erhaltene Danke: 220

Windows 8 , Server 2012
D7 Pro, VS.NET 2012 (C#)
BeitragVerfasst: Do 01.01.09 17:05 
Yapp, verwende SmptClient statt SmtpMail, das sollte die Sache vielleicht beheben.
jaenicke
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 19272
Erhaltene Danke: 1740

W11 x64 (Chrome, Edge)
Delphi 11 Pro, Oxygene, C# (VS 2022), JS/HTML, Java (NB), PHP, Lazarus
BeitragVerfasst: Do 01.01.09 17:07 
Und in der genannten mit .NET 2.0 eingeführten Klasse SmtpClient gibt es auch die Möglichkeit den Port ggf. einzustellen wie ich gerade sehe.

Das andere: Port 25 ist doch unverschlüsselt und 110 verschlüsselt, oder? Vielleicht hat das damit etwas zu tun?
UGrohne
ontopic starontopic starontopic starontopic starontopic starontopic starofftopic starofftopic star
Veteran
Beiträge: 5502
Erhaltene Danke: 220

Windows 8 , Server 2012
D7 Pro, VS.NET 2012 (C#)
BeitragVerfasst: Do 01.01.09 17:17 
user profile iconjaenicke hat folgendes geschrieben Zum zitierten Posting springen:
Und in der genannten mit .NET 2.0 eingeführten Klasse SmtpClient gibt es auch die Möglichkeit den Port ggf. einzustellen wie ich gerade sehe.

Das andere: Port 25 ist doch unverschlüsselt und 110 verschlüsselt, oder? Vielleicht hat das damit etwas zu tun?

Nein, Port 25 ist SMTP, Port 110 ist POP3. Es gibt noch die TLS-verschlüsselten Alternativen auf 465 bzw. 995.

Außerdem ist Deine Verwendung von MailMessage nicht ganz korrekt, schau mal am Besten in die MSDN rein, da gibts ein gutes Beispiel zur Klasse MailMessage.
sharpx Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 51



BeitragVerfasst: Do 01.01.09 18:03 
user profile iconUGrohne hat folgendes geschrieben Zum zitierten Posting springen:
user profile iconjaenicke hat folgendes geschrieben Zum zitierten Posting springen:
Und in der genannten mit .NET 2.0 eingeführten Klasse SmtpClient gibt es auch die Möglichkeit den Port ggf. einzustellen wie ich gerade sehe.

Das andere: Port 25 ist doch unverschlüsselt und 110 verschlüsselt, oder? Vielleicht hat das damit etwas zu tun?

Nein, Port 25 ist SMTP, Port 110 ist POP3. Es gibt noch die TLS-verschlüsselten Alternativen auf 465 bzw. 995.

Außerdem ist Deine Verwendung von MailMessage nicht ganz korrekt, schau mal am Besten in die MSDN rein, da gibts ein gutes Beispiel zur Klasse MailMessage.


Kannst du mir ein Beispiel zeigen?
Ja Port 25 = SMTP
und Port 110 = POP3

Bezieht sich lediglich darauf ob emails gesendet oder empfangen werden sollten.
Verschlüsselt wäre es TLS bzw. SSL bzw. andere Verfahren, die vom Server unterstützt werden.
UGrohne
ontopic starontopic starontopic starontopic starontopic starontopic starofftopic starofftopic star
Veteran
Beiträge: 5502
Erhaltene Danke: 220

Windows 8 , Server 2012
D7 Pro, VS.NET 2012 (C#)
BeitragVerfasst: Do 01.01.09 19:24 
Hier, sogar mit Authentifizierung ;)
ausblenden C#-Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
            MailMessage msg = new MailMessage();
            msg.From = new MailAddress("EMail1");
            msg.To.Add(new MailAddress("EMail2"));
            msg.Subject = "Testmail";
            msg.Body = "Dies ist eine Testmail";

            SmtpClient client = new SmtpClient();
            client.Host = "Mailserver";
            client.Credentials = new NetworkCredential("Benutzername""Passwort");
            client.Send(msg);
sharpx Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 51



BeitragVerfasst: So 04.01.09 14:42 
Hallo,


Bin leider erst jetzt zum testen gekommen.

ausblenden C#-Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
22:
23:
24:
using System;
using System.IO;
using System.Net;
using System.Net.Mail;

namespace teset
{
  class Program
  {
    public static void Main(string[] args)
    {
      MailMessage msg = new MailMessage();
            msg.From = new MailAddress("EMail1@test.de");
            msg.To.Add(new MailAddress("f.a@vol.at"));
            msg.Subject = "Testmail";
            msg.Body = "Dies ist eine Testmail";

            SmtpClient client = new SmtpClient();
            client.Host = "pop.vol.at";
            client.Credentials = new NetworkCredential("user""pass");
            client.Send(msg);
    }
  }
}


Bekomme folgenden Fehler:

System.Net.Mail.SmtpException: Failure sending mail. ---> System.IO.IOException: Unable to read data from the transport connection: net_io_connectionclosed.
at System.Net.Mail.SmtpClient.Send
at teset.Program.Main in c:\Documents and Settings\Owner\My Documents\SharpDevelop Projects\teset\teset\Program.cs:line 30

Moderiert von user profile iconUGrohne: Beitragsformatierung überarbeitet.
sharpx Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 51



BeitragVerfasst: So 04.01.09 15:07 
Mein Fehler habe aus Versehen pop.vol.at anstatt von smtp.vol.at geschrieben.
Der Code hat ansonsten funktioniert.


Danke für eure Hilfe