# E-Mail Eingang überprüfen



## Vektor (19. November 2004)

Hallo,

ich würde gerne ein Programm in VB schreiben dass in einem bestimmten Intervall überprüft, ob in meinem POP3 Postfach eine neue E-Mail eingegangen ist. Wenn ja dann soll es nur eine Meldung anzeigen aber die E-Mail nicht vom Server löschen. 

Das erste Problem ist, wie ich auf das Postfach zugreifen kann! Ich hab darüber nichts gefunden. 

Und das zweite ist, dass das Programm den Betreff einlesen und abspeichern muss, da es sonst nicht erkennt welche e-Mail neu ist und welche alt.

Wie könnte ich das am besten realisieren?

Hoffe ihr könnt mir helfen...

Danke.


----------



## wincnc (20. November 2004)

Solche kleine Programme gibt´s schon.
Das ist eine sehr gutes Programm, daß je nach Wunsch in bestimmten Abständen das eMail Postfach ausließt und eine Meldung bringt. Eine Vorschau ist auch möglich !

http://www.scheernet.de/postda/download/index.html


----------



## Vektor (20. November 2004)

wincnc hat gesagt.:
			
		

> Solche kleine Programme gibt´s schon.]



Ja, ich weiß. Aber ich würde die Funktion gerne in ein anderes Programm von mir einbauen. Deshalb wäre ich froh wenn mir jemand sagen kann, wie ich auf den POP3 Server zugreifen kann.

Geht das über Winsock?

Am besten wäre ein kleines Codebeispiel wie ich die Anmeldung am Server vollbringen kann und den Befehl zum Abrufen des Betreffs.

Aber trozdem Danke...werde das Programm mal testen.


----------



## DrSoong (20. November 2004)

Schau dir mal diesen Tipp an, der könnte was für dich sein.


Der Doc!


----------



## Vektor (23. November 2004)

Danke bisher für eure Hilfe! Ich hab mir bis jetzt folgende Sub gebastelt:


```
Global Host As String
Global Username As String
Global Password As String
Global Port As Integer
Global Anzahl As Integer
Global Groeße As Double
Global Stat_Result As String

Public Sub Verbindung_Aufbauen()

'In dieser Sub wird die Verbindung zum Pop3 Server hergestellt

Host = Eigenschaften.Host.Text
Username = Eigenschaften.Username.Text
Password = Eigenschaften.Pass.Text
Port = Eigenschaften.Port.Text

Programm.Winsock1.LocalPort = 0
Programm.Winsock1.Connect Host, Port
If Response Then GoTo ERRSub

Programm.Winsock1.SendData ("USER " & Username & vbCrLf)
If Response Then GoTo ERRSub

Programm.Winsock1.SendData ("PASS " & Password & vbCrLf)
If Response Then GoTo ERRSub

'Verbindung ist aufgebaut
'Abfragen der Anzahl und Größe der E-Mails

Programm.Winsock1.SendData ("STAT" & vbCrLf)
If Response Then GoTo ERRSub

'Hier muss STAT in Stat_Result übertragen werden.

Programm.Winsock1.SendData ("QUIT" & vbCrLf)
If Response Then GoTo ERRSub

Exit Sub

ERRSub:

Call MsgBox("Fehler bei der Übertragung" & Err.Description, vbOKOnly + vbCritical, "Fehler" & Err.Number)
Programm.Winsock1.Close

End Sub
```

Jetzt hab ich dass Problem dass ich nicht weiß, wie ich die Rückmeldung auf den Befehl "STAT", welche so lauten müsste "+OK Anzahl Größe", in die Stringvariable Stat_Result bekomme.

Fällt euch dazu etwas ein?


----------

