vb@rchiv
VB Classic
VB.NET
ADO.NET
VBA
C#
Mails senden, abrufen und decodieren - ganz easy ;-)  
 vb@rchiv Quick-Search: Suche startenErweiterte Suche starten   Impressum  | Datenschutz  | vb@rchiv CD Vol.6  | Shop Copyright ©2000-2025
 
zurück

 Sie sind aktuell nicht angemeldet.Funktionen: Einloggen  |  Neu registrieren  |  Suchen

VB.NET - Fortgeschrittene
SMTP Mail Server 
Autor: crivi
Datum: 02.03.05 18:34

Hallo zusammen

Ich bin gerade dran, einen SMTP Server zu programmieren.

Mit dem Sockets funktioniert alles wunderbar. Allerdings habe ich da noch ein problem.

Ich kann maximal 1 Zeichen schreiben. D.H Wenn ich als erster Befehl HELO schreiben will (per Telnet), dann fährt er nach dem ersten Zeichen also mit H fort.

Das ich mein Code wo die eingabe ankommt:

While (True)
            'Wait for Client Command on this socket
            Dim bFlagNotToExitFromCommand As Boolean = False
            Dim SMTPCommand As String
            Dim byteArray(2048) As Byte
            Try
 
                Dim iBytes As Integer = ServerSocketForClient.Receive( _
                  byteArray, byteArray.Length, 0)
                Dim MessageFromClient As String = Encoding.ASCII.GetString( _
                byteArray)
                If iBytes > 0 Then
                    SMTPCommand = ParseCommandFromMessage(MessageFromClient, _
                      SMTPLastCommand)
                Else
                    SMTPCommand = SMTPQUIT
                End If
                'There may be more than one file to be tranfered in the same 
                ' connection
                'this will lead to close the file and open again for next file
                If SMTPCommand = SMTPRSET Then
                    If SMTPLastCommand = SMTPREQACCP Then
                        If Not pFile Is Nothing Then
                            pFileWriter.Close()
                            pFile.Close()
                            'open new file
                            pFile = CreateFileForSMTPClient(SMTPSpool & "\" & _
                              CStr(ClientCount & r.Next(1, 100)))
                            pFileWriter = New StreamWriter(pFile)
                        End If
                    End If
                Else
                    If SMTPCommand = SMTPMAIL And pFile Is Nothing Then
                        pFile = CreateFileForSMTPClient(SMTPSpool & "\" & CStr( _
                          ClientCount & r.Next(1, 100)))
                        pFileWriter = New StreamWriter(pFile)
                    End If
                    bFlagNotToExitFromCommand = SMTPHandleCommand(SMTPCommand, _
                      MessageFromClient, ServerSocketForClient, pFileWriter)
                End If
            Catch e As NotSupportedException
                Console.WriteLine(e.ToString)
            End Try
            If Not bFlagNotToExitFromCommand Then Exit While
        End While
Bei diesen Befehl kommen die Eingaben an:

                Dim iBytes As Integer = ServerSocketForClient.Receive( _
                  byteArray, byteArray.Length, 0)
Was mache ich da falsch? Das Projekt ist nicht von mir, das habe ich im Internet gefunden!

Vielen Dank für Eure Hilfe.

Gruss Raffi
alle Nachrichten anzeigenGesamtübersicht  |  Zum Thema  |  Suchen

 ThemaViews  AutorDatum
SMTP Mail Server965crivi02.03.05 18:34
Re: SMTP Mail Server648Moderatorralf_oop02.03.05 19:22
Re: SMTP Mail Server638crivi02.03.05 19:28
Re: SMTP Mail Server499crivi02.03.05 20:52
Re: SMTP Mail Server513Moderatorralf_oop03.03.05 16:40
Re: SMTP Mail Server551crivi03.03.05 16:43
Re: SMTP Mail Server546Moderatorralf_oop03.03.05 17:21

Sie sind nicht angemeldet!
Um auf diesen Beitrag zu antworten oder neue Beiträge schreiben zu können, müssen Sie sich zunächst anmelden.

Einloggen  |  Neu registrieren

Funktionen:  Zum Thema  |  GesamtübersichtSuchen 

nach obenzurück
 
   

Copyright ©2000-2025 vb@rchiv Dieter Otter
Alle Rechte vorbehalten.
Microsoft, Windows und Visual Basic sind entweder eingetragene Marken oder Marken der Microsoft Corporation in den USA und/oder anderen Ländern. Weitere auf dieser Homepage aufgeführten Produkt- und Firmennamen können geschützte Marken ihrer jeweiligen Inhaber sein.

Diese Seiten wurden optimiert für eine Bildschirmauflösung von mind. 1280x1024 Pixel