Email senden und Empfangen ohne Komponente

Alle Fragen zur Netzwerkkommunikation
Antworten
Emsbootsmann
Beiträge: 28
Registriert: Mo 29. Jan 2007, 18:50

Email senden und Empfangen ohne Komponente

Beitrag von Emsbootsmann »

Ich möchte ein Tool schreiben um Emails zu senden und auch zum Empfang als Antwort. Nun möchte ich aber Keine Komponente einsetzen ,am liebsten eine DLL oder nur Units.
Gibt es irgendwo Demoprogramme, im Forum hab ich nur was mit senden gefunden, jedoch nichts zum empfangen.
Für eure Hilfe bedanke ich mich schon jetzt im voraus. Danke.

marcov
Beiträge: 1100
Registriert: Di 5. Aug 2008, 09:37
OS, Lazarus, FPC: Windows ,Linux,FreeBSD,Dos (L trunk FPC trunk)
CPU-Target: 32/64,PPC(+64), ARM
Wohnort: Eindhoven (Niederlande)

Re: Email senden und Empfangen ohne Komponente

Beitrag von marcov »

Man kann componente wie Indy, ICS,LNET oder Synapse auch programmatisch nutzen, ohne Designer.

Ich habe das aber nur mit http getan.

Benutzeravatar
m.fuchs
Lazarusforum e. V.
Beiträge: 2636
Registriert: Fr 22. Sep 2006, 19:32
OS, Lazarus, FPC: Winux (Lazarus 2.0.10, FPC 3.2.0)
CPU-Target: x86, x64, arm
Wohnort: Berlin
Kontaktdaten:

Re: Email senden und Empfangen ohne Komponente

Beitrag von m.fuchs »

Was verstehst du denn unter empfangen? Möchtest du einen Mailserver schreiben der direkt die E-Mails entgegennimmt?
Oder möchtest du einfach nur ein Mailpostfach per POP3 oder IMAP abrufen? Das geht zum Beispiel mit Synapse (pop3send / imapsend).
Software, Bibliotheken, Vorträge und mehr: https://www.ypa-software.de

braunbär
Beiträge: 369
Registriert: Do 8. Jun 2017, 18:21
OS, Lazarus, FPC: Windows 10 64bit, Lazarus 2.0.10, FPC 3.2.0
CPU-Target: 64Bit
Wohnort: Wien

Re: Email senden und Empfangen ohne Komponente

Beitrag von braunbär »

Emsbootsmann hat geschrieben:Nun möchte ich aber Keine Komponente einsetzen ,am liebsten eine DLL oder nur Units.


Ähhhh?
Ich verstehe ja, wenn jemand keine DLL verwenden will - aber was hast du gegen eine Komponente? Was ist der Nachteil einer Komponentenklasse gegenüber einer anderen Klasse, die in irgend einer Unit steht und sich um den Versand/Empfang von Mails kümmert?

Benutzeravatar
Niesi
Lazarusforum e. V.
Beiträge: 331
Registriert: So 26. Jun 2016, 19:44
OS, Lazarus, FPC: Linux Mint Cinnamon (Windows wenn notwendig), Lazarus 3.0 FPC 3.3.1

Re: Email senden und Empfangen ohne Komponente

Beitrag von Niesi »

Emsbootsmann hat geschrieben:Ich möchte ein Tool schreiben um Emails zu senden und auch zum Empfang als Antwort. Nun möchte ich aber Keine Komponente einsetzen ,am liebsten eine DLL oder nur Units.
Gibt es irgendwo Demoprogramme, im Forum hab ich nur was mit senden gefunden, jedoch nichts zum empfangen.
Für eure Hilfe bedanke ich mich schon jetzt im voraus. Danke.


Hast Du eventuell schon mal etwas Quelltext? Nur, damit wir es besser verstehen können ...
Wissen ist das einzige Gut, das sich vermehrt, wenn es geteilt wird ...

Benutzeravatar
af0815
Lazarusforum e. V.
Beiträge: 6198
Registriert: So 7. Jan 2007, 10:20
OS, Lazarus, FPC: FPC fixes Lazarus fixes per fpcupdeluxe (win,linux,raspi)
CPU-Target: 32Bit (64Bit)
Wohnort: Burgenland
Kontaktdaten:

Re: Email senden und Empfangen ohne Komponente

Beitrag von af0815 »

Wenn keine Komponenten installieren, man kann die Units auch ohne Installation in der IDE verwenden :-)

Synapse zB. braucht man nur herunterladen, in den Suchpfad aufnehmen und es ist IMHO verwendbar (und kein Paket installieren).

Andreas
Blöd kann man ruhig sein, nur zu Helfen muss man sich wissen (oder nachsehen in LazInfos/LazSnippets).

Benutzeravatar
theo
Beiträge: 10467
Registriert: Mo 11. Sep 2006, 19:01

Re: Email senden und Empfangen ohne Komponente

Beitrag von theo »

Ich kann mich nur anschließen. Du scheinst mit der Terminologie schon nicht ganz klar zu kommen.
Emails "empfängt" man normalerweise nicht, sondern man holt sie am Server ab.
Was ist für dich der Unterschied zwischen Units und Komponenten, dass du letztere ausschließt?
Kommst du mit objektorientierter Programmierung nicht zurecht, oder worum geht es dir?

Emsbootsmann
Beiträge: 28
Registriert: Mo 29. Jan 2007, 18:50

Re: Email senden und Empfangen ohne Komponente

Beitrag von Emsbootsmann »

Als erstes möchte ich keine Komponenten installieren da ich auf verschiedenen Rechner programmiere und es teilweise nicht gewünscht wird.Sind nicht alles meine eigenen Rechner.
Ich möchte mit einem anderen Programm kommunizieren in dem z.B. das Programm eine Email sendet ich diese "vom Server" abrufe und dann eine Antwort per "imap" sende.
Die Info die Units aus synapse nur einzubinden finde ich gut werde es versuchen.Jedoch habe ich nur Beispiele gefunden für das versenden von Mails nicht das "abholen vom Server".
Vielleicht kann mit da ja jemand helfen.

marcov
Beiträge: 1100
Registriert: Di 5. Aug 2008, 09:37
OS, Lazarus, FPC: Windows ,Linux,FreeBSD,Dos (L trunk FPC trunk)
CPU-Target: 32/64,PPC(+64), ARM
Wohnort: Eindhoven (Niederlande)

Re: Email senden und Empfangen ohne Komponente

Beitrag von marcov »

Komponenten muss man nur registrieren in Lazarus/Delphi wenn man sie im Designer nutzt.

Wenn man sie Runtime kreiert nutzt, braucht man das nicht.

MacWomble
Lazarusforum e. V.
Beiträge: 999
Registriert: Do 17. Apr 2008, 01:59
OS, Lazarus, FPC: Mint 21.1 Cinnamon / FPC 3.2.2/Lazarus 2.2.4
CPU-Target: Intel i7-10750 64Bit
Wohnort: Freiburg

Re: Email senden und Empfangen ohne Komponente

Beitrag von MacWomble »

Emsbootsmann hat geschrieben:Jedoch habe ich nur Beispiele gefunden für das versenden von Mails nicht das "abholen vom Server".
Vielleicht kann mit da ja jemand helfen.


Das suche ich auch schon lange, scheint aber noch niemand wirklich geschafft zu haben. Für so etwas sollte es meines Erachtens eine Komponente geben. Mit Synapse geht das zwar, aber die ganze Decodiererei der Mail ist recht komplex.
Christian hat das in seiner Software, aber die Zusammenhänge dort haben sich mir noch nicht erschlossen.
Alle sagten, dass es unmöglich sei - bis einer kam und es einfach gemacht hat.

braunbär
Beiträge: 369
Registriert: Do 8. Jun 2017, 18:21
OS, Lazarus, FPC: Windows 10 64bit, Lazarus 2.0.10, FPC 3.2.0
CPU-Target: 64Bit
Wohnort: Wien

Re: Email senden und Empfangen ohne Komponente

Beitrag von braunbär »

Mit Indy habe ich sehr gute Erfahrungen gemacht, ich habe allerdings kein Imap, sondern nur pop3 implementiert. Das hat unter Delphi im Prinzip problemlos funktioniert (von der richtigen Zeichensatz-Konvertierung abgesehen, das ist etwas mühsam), das Portieren auf Free Pascal steht bei mir allerdings noch an. Das wird ziemlich sicher wieder eine Frickelei mit den verschiedenen Zeichensätzen, aber dagegen dürfte es kein Kraut geben.

Und wie Marcov schon geschrieben hat, du brauchst keine Packages registrieren, wenn du die Komponenten nicht schon im Form Designer ertstellen willst. Um eine Komponente zur Laufzeit zu erstellen (co:=txxx.create), muss die Unit der Komponente nur so wie jede andere Unit, die du verwenden willst, mit uses ins Programm eingebunden werden.

Benutzeravatar
theo
Beiträge: 10467
Registriert: Mo 11. Sep 2006, 19:01

Re: Email senden und Empfangen ohne Komponente

Beitrag von theo »

Emsbootsmann hat geschrieben:Als erstes möchte ich keine Komponenten installieren da ich auf verschiedenen Rechner programmiere und es teilweise nicht gewünscht wird.Sind nicht alles meine eigenen Rechner.
Ich möchte mit einem anderen Programm kommunizieren in dem z.B. das Programm eine Email sendet ich diese "vom Server" abrufe und dann eine Antwort per "imap" sende.
Die Info die Units aus synapse nur einzubinden finde ich gut werde es versuchen.Jedoch habe ich nur Beispiele gefunden für das versenden von Mails nicht das "abholen vom Server".
Vielleicht kann mit da ja jemand helfen.


Einen Mail Client zu entwickeln ist ungleich komplexer als eine Mail zu verschicken.
Man müsste zuerst definieren, was der überhaupt können muss.

Welche Mails der Liste hole ich überhaupt ab?
Wie soll ich mit HTML verfahren? In Text umwandeln oder in einem Viewer formatiert anzeigen?
Was soll mit Attachments geschehen?
etc.

Dass du eine "Antwort per imap" senden willst, zeigt mir, dass du immer noch nicht ganz weißt, wovon du sprichst. :wink:

Antworten