Send E-Mail Frage

Für allgemeine Fragen zur Programmierung mit PureBasic.
Benutzeravatar
udg
Beiträge: 560
Registriert: 20.06.2013 23:27

Send E-Mail Frage

Beitrag von udg »

Ich befasse mich nun schon seit 3 Tagen mit dem Verschicken von einer Email via PureBasic.

Eigentlich soll die als HTML quasi wie ein Newsletter verschickt werden. Diesen Wunsch habe ich aufgeben müssen, da PB einfach dazu nicht mit den normalen Mitteln zu bewegen ist.
Und um eine HTML Email zu verschicken will ich nicht unbedingt eine krasse Turnübung daraus machen.
Ich habe zb versucht einfach mal ein kleines Bild mitzuschicken. Natürlich wird das immer als Text interpretiert. Keine Chance.

Vielleicht gibt es da ja inzwischen eine Lösung mit einem SC der sich einbinden lässt und auch später beim Empfänger so ankommt wie ich den Newsletter hier erstellt habe.

Dieser besteht aus simplen Tabellen mit Bild, Line und Text. Mehr verlang ich ja schon gar nicht :D

Das Versenden mit normalen Text funktioniert soweit, dass ich mit

Code: Alles auswählen

SetMailBody(#MailOut, " Text ")
verschicken kann und es auch so beim Empfänger ankommt.


Weiterhin musss angegeben werden über welchen SMTP ich die Mail verschicken will. Und hier habe ich festgestellt, dass Brutal viele private Informationen im Header der erzeugten Mail mitgeschickt werden.

Beispiel:
X-EN-OrigHost: cable-****************** ---> mein Internetanbieter und ob ich Kabel oder Wlan benutze :o
X-EN-OrigIP: ********** ---> meine IP
Received: from [IP******] (port=******* helo=*****) :o sogar der Name meines Windows Systems "helo=" wird mitgeschickt. Krass
X-EN-AuthUser: der benutzte SMTP :?
usw.

Meine Frage.
Kann man zB. X-EN-AuthUser entfernen so wie dies in einem Emailprogramm wie zB Outlook geht, mit diversen PB Befehlen? (ich bin da leider überfragt)
denn dies macht den SMTP angreifbar, da hier Plain Text ausgegeben wird.

DAnke fürs lesen
Grüße
PB v5.43 LTS + v6.02 LTS | Windows 7 x86 + 11 x64 - Gforce RTX 4090 - AMD Ryzen 9 5900X 12-Core Processor 4.2 GHz - 64,0 GB RAM,
ASUSTEK TUF Gaming X570 Plus
ASUS ROG Thor-1200P Platinum (1200W, Aura Sync, OLED Display, 0dB-Cooling)
1x 1 TByte Samsung MZ-V7S500BW 970 EVO Plus 1 TB NVMe M.2 Internal SSD
1x 2 TByte Samsung MZ-V7S2T0BW 970 EVO Plus 2 TB NVMe M.2 Internal SSD
von BiSONTE! TOP. Kauft Eure Hardware gern bei ihm.
Monitor:
LG 38GL950G-B 95 (38 Zoll) Ultragear Curved 21: 9 UltraWide QHD IPS
Benutzeravatar
DarkSoul
Beiträge: 689
Registriert: 19.10.2006 12:51

Re: Send E-Mail Frage

Beitrag von DarkSoul »

Du musst für HTML im Header den MIME festlegen, dass der Inhalt HTML ist:

Content-Type: text/html; charset=UTF-8

bzw. multipart/mixed, wenn es mit Attachments sein soll. Das ist aber ein bissle komplizierter.

Und dann die HTML-Tags einfach in den Body machen. Sollte klappen. <)

Allerdings stößt die sparsam ausgelegte Mail-Lib von PB dabei wohl an seine Grenzen.

Vielleicht hilft dir das hier weiter, da kannst du dir den SMTP-Header selber zusammenschubsen:

http://www.purebasic.fr/english/viewtop ... 13&t=51018

__________________________________________________
Domain angepasst
06.03.2018
RSBasic
Bild
Benutzeravatar
udg
Beiträge: 560
Registriert: 20.06.2013 23:27

Re: Send E-Mail Frage

Beitrag von udg »

DarkSoul hat geschrieben: Allerdings stößt die sparsam ausgelegte Mail-Lib von PB dabei wohl an seine Grenzen.
Allerdings, das musste ich schon feststellen. Mit einem alten Code aus PB36? haben wir es geschafft ein Bild im Mailbody zu verankern. Leider wird es nicht bei jedem Anbieter (gängige, keine Exoten) angezeigt. grummel

schon traurig, dass in PB5.62 immer noch nicht auf Mail und Web ordentlich eingegangen wird.
DarkSoul hat geschrieben: Vielleicht hilft dir das hier weiter, da kannst du dir den SMTP-Header selber zusammenschubsen:

http://www.purebasic.fr/english/viewtop ... 13&t=51018
auf dieser Seite war ich schon gefühlte 500 mal aber werde daraus nicht schlau ob das nun gehen will oder nicht. Ich werde mich da nochmal ransetzen.


Danke Dir
PB v5.43 LTS + v6.02 LTS | Windows 7 x86 + 11 x64 - Gforce RTX 4090 - AMD Ryzen 9 5900X 12-Core Processor 4.2 GHz - 64,0 GB RAM,
ASUSTEK TUF Gaming X570 Plus
ASUS ROG Thor-1200P Platinum (1200W, Aura Sync, OLED Display, 0dB-Cooling)
1x 1 TByte Samsung MZ-V7S500BW 970 EVO Plus 1 TB NVMe M.2 Internal SSD
1x 2 TByte Samsung MZ-V7S2T0BW 970 EVO Plus 2 TB NVMe M.2 Internal SSD
von BiSONTE! TOP. Kauft Eure Hardware gern bei ihm.
Monitor:
LG 38GL950G-B 95 (38 Zoll) Ultragear Curved 21: 9 UltraWide QHD IPS
Benutzeravatar
udg
Beiträge: 560
Registriert: 20.06.2013 23:27

Re: Send E-Mail Frage

Beitrag von udg »

Ja, nun habe ich den Code in PB5.62 ausprobiert und bekomme nur Fehler mit denen ich nix anzufangen weis.
Zeile 60... der Operator ist nicht VALIDE

Da in PB zu einer neuen Version immer viel geändert, erneuert und weggelassen oder wegrationalisiert wird, kann ich schlecht nachvollziehen wie ich die Syntax aufbauen muss, damit ich mal ein Beispiel zum laufen bekomme :(
der Code ist von 2008 :freak:

http://www.purebasic.fr/english/viewtop ... 12&t=33457
PB v5.43 LTS + v6.02 LTS | Windows 7 x86 + 11 x64 - Gforce RTX 4090 - AMD Ryzen 9 5900X 12-Core Processor 4.2 GHz - 64,0 GB RAM,
ASUSTEK TUF Gaming X570 Plus
ASUS ROG Thor-1200P Platinum (1200W, Aura Sync, OLED Display, 0dB-Cooling)
1x 1 TByte Samsung MZ-V7S500BW 970 EVO Plus 1 TB NVMe M.2 Internal SSD
1x 2 TByte Samsung MZ-V7S2T0BW 970 EVO Plus 2 TB NVMe M.2 Internal SSD
von BiSONTE! TOP. Kauft Eure Hardware gern bei ihm.
Monitor:
LG 38GL950G-B 95 (38 Zoll) Ultragear Curved 21: 9 UltraWide QHD IPS
Benutzeravatar
RSBasic
Admin
Beiträge: 8022
Registriert: 05.10.2006 18:55
Wohnort: Gernsbach
Kontaktdaten:

Re: Send E-Mail Frage

Beitrag von RSBasic »

Code: Alles auswählen

If FindString(SMTP_LastAnswer$, "220", 0) <> 0
    SMTP_Last_Error = SMTP_Send_Server(Connection, #SMTP_Helo + NewServer$ + #CLRF) = #SMTP_OK
    ProcedureReturn Connection
   EndIf 
>

Code: Alles auswählen

If FindString(SMTP_LastAnswer$, "220", 0) <> 0
  SMTP_Last_Error = SMTP_Send_Server(Connection, #SMTP_Helo + NewServer$ + #CLRF)
  If SMTP_Last_Error = #SMTP_OK
    ProcedureReturn Connection
  EndIf
EndIf
Aus privaten Gründen habe ich leider nicht mehr so viel Zeit wie früher. Bitte habt Verständnis dafür.
Bild
Bild
Benutzeravatar
Bisonte
Beiträge: 2427
Registriert: 01.04.2007 20:18

Re: Send E-Mail Frage

Beitrag von Bisonte »

Wenn ich mir den Code so ansehe ?! ... Wann soll der jemals funktioniert haben ? Dort wird nirgendwo ein Passwort verlangt .... Welcher EmailServer lässt irgendwas ohne Passwort durch ?
PureBasic 6.04 LTS (Windows x86/x64) | Windows10 Pro x64 | Asus TUF X570 Gaming Plus | R9 5900X | 64GB RAM | GeForce RTX 3080 TI iChill X4 | HAF XF Evo | build by vannicom​​
Benutzeravatar
DarkSoul
Beiträge: 689
Registriert: 19.10.2006 12:51

Re: Send E-Mail Frage

Beitrag von DarkSoul »

Früher war das alles nicht so abgesichert wie heute. Senden ging damals meineswissens teilweise ohne Passwort.

Muss halt ein wenig aktualisiert werden. :)

Wenn das ein ernsthaftes wirklich sicheres Programm werden soll, dann: Don't reinvent the square wheel! Gerade hier ist das Risiko für gefährliche Sicherheitslücken extrem hoch.

Da gibt es doch sicherlich auch irgendeine neuere Lib/dll/so für. Ich habe mich damit bisher nicht beschäftigt, weil ich das in PB bisher nicht brauchte. Aber da gibt es mit Sicherheit irgendwas.
Oder man nimmt für den Teil des Programmes eine andere Programmiersprache, die das besser unterstützt oder wenn das ganze für Linux wird: sendmail verwenden. :mrgreen:
Bild
Benutzeravatar
udg
Beiträge: 560
Registriert: 20.06.2013 23:27

Re: Send E-Mail Frage

Beitrag von udg »

Hi,

ich bin immer noch am suchen und probieren wie ich einen NewsLetter im HTML Format verschicken kann. Es wird langsam frustrierend.
Kein HTML Support nur Text, kein TLS/SSL/ explicit Support - WebGadget (HTML5 nur mit eigenen Hack möglich und dieser blöde IE als Standard :angry: )

Frust

Sollen doch Fred und Co lieber für Ihre Updates etwas Geld verlangen damit mehr Motivation? vorhanden ist aber dafür auch mal auf die Wünsche der Anwender ein.- und auch mit der Zeit gehen.

Ich such mir einen Wolf im Netz nach: Senden HTML Email Newsletter via Purebasic. Alles nix.

Normal plain Text Email. Das war mal mitte der 90iger. Heute muss da mehr gehen!

Weiterhin auch das Problem mit sicheren FTP Verbindungen. Da muss man auf zweit und dritt Produkte zugreifen und übel Jonglieren und zaubern damit man mal auf einen gesicherten FTP zugreifen kann.

NATIVE Boardmittel dringend erwünscht!

Ich Zahle 100€ sofort für die Implementireung, als auf Lebzeit Gratisupdates zu bekommen wo Jahrelang alte Sachen mitgeschleppt werden :freak:

Hat jemand noch eine Idee, einen SC den ich Bäuchlinks gebückt mit Verenkung in PB nutzen kann damit ich einen Newsletter in zeitgemäßem Standard verschicken kann?

und auch gesucht: mit Purebasic eine Verbindung herstellen zu können auf: TLS/SSL/ explicit FTP.
PB v5.43 LTS + v6.02 LTS | Windows 7 x86 + 11 x64 - Gforce RTX 4090 - AMD Ryzen 9 5900X 12-Core Processor 4.2 GHz - 64,0 GB RAM,
ASUSTEK TUF Gaming X570 Plus
ASUS ROG Thor-1200P Platinum (1200W, Aura Sync, OLED Display, 0dB-Cooling)
1x 1 TByte Samsung MZ-V7S500BW 970 EVO Plus 1 TB NVMe M.2 Internal SSD
1x 2 TByte Samsung MZ-V7S2T0BW 970 EVO Plus 2 TB NVMe M.2 Internal SSD
von BiSONTE! TOP. Kauft Eure Hardware gern bei ihm.
Monitor:
LG 38GL950G-B 95 (38 Zoll) Ultragear Curved 21: 9 UltraWide QHD IPS
Benutzeravatar
Kiffi
Beiträge: 10621
Registriert: 08.09.2004 08:21
Wohnort: Amphibios 9

Re: Send E-Mail Frage

Beitrag von Kiffi »

Hallo udg,

ich werfe mal den Begriff libCurl als mögliche Lösung in den Raum. Sollte genügend Futter für die Suchmaschine sein.

Grüße ... Peter

P.S.: bzgl. der FTP-Sachen: die .NET-DLLs von RSBasic sind keine Option für Dich? Ich wette, wenn man ganz lieb "Bitte, Bitte" sagt, dann baut er Dir auch eine Mail.DLL. Und über den Hunni würde er sich wohl auch freuen. ;-)
Hygge
Antworten