Seite 1 von 1

BLAT-aufruf

Verfasst: Sa, 09. Mai 2015 19:06
von Rolf Ramacher
Hallo zusammen

Hi Jan

irgendetwas mache ich noch falsch

hier der Punkt wo ich die Funktion aufrufe - war erstmal zum testen

Code: Alles auswählen

	email_senden("import beendet","test","r.ramacher@sprinter-software.de","rolf.ramacher@freenet.de")

Code: Alles auswählen

#include "dll.ch"

Function email_senden(cBody,csubject,cTo,cFrom)
LOCAL cBlatDLLName := "BLAT.DLL", cParameter:="", nRueck:=0

cParameter := " -body " + Chr(34) + cbody + Chr(34)+ ;
" -subject " + Chr(34) + cSubject + Chr(34) + ;
" -to " + cTo + ;
" -server " + "smtp.server" + " -f " + cFrom


nBlatDll := dllLoad(cBlatDLLName)

IF nBlatDll > 0
nRueck := DllCall(nBlatDll, DLL_STDCALL , "Send", cParameter) // *** Send muss genauso geschrieben werden.
ENDIF
Return Nil
die blat.dll und die blat.exe liegt im Verzeichnis windows\system32 und im lokalen Verzeichnis. bezieht sicht smtp.server auf den Absender? steht "-f" für den Absender ?? kommt zum Schluss der Absender ??

Re: BLAT-aufruf

Verfasst: Sa, 09. Mai 2015 19:12
von Jan
Rolf,

lies doch bitte einmal die Doku zu Blat durch.

Und ersetze bitte "smtp.server" durch die Einstellungen der absendenen Mailadresse. Natürlich ist das der SMTP-Server des Absenders, des Empfängers ist ja etwas schwierig umzusetzen.

Jan

Re: BLAT-aufruf

Verfasst: Mi, 10. Jun 2015 15:40
von Rolf Ramacher
Hallo zusammen

ich habe nochmal eine Frage

Code: Alles auswählen

#include "dll.ch"

Function email_senden(cBody,csubject,cTo,cFrom,cPw,cSsl,cName,cServer)
LOCAL cBlatDLLName := "BLAT.DLL", cParameter:="", nRueck:=0

cParameter := " -body " + Chr(34) + cbody + Chr(34)+ ;
" -subject " + Chr(34) + cSubject + Chr(34) + ;
" -to " + cTo + ;
" -server " + cServer + " -u " +cName + " -f " + cFrom + " -pw "+cPw+cSsl



nBlatDll := dllLoad(cBlatDLLName)

IF nBlatDll > 0
	nRueck := DllCall(nBlatDll, DLL_STDCALL , "Send", cParameter) // *** Send muss genauso geschrieben werden.
ENDIF
Return Nil
es klappt alles soweit hervorragend. mit dem versand über gmx. Aber bei Versand über freenet. passiert nichts - es kommen hier alle Werte richtig an.
Hat jemand eine Idee?
die variable beinhaltet den Anmeldenamen- pw passwort, cSSL die SSl-Schüsselungsnummer des postausgangsservers

Re: BLAT-aufruf

Verfasst: Mi, 10. Jun 2015 15:51
von Jan
Rolf,

blat kann kein SSL.

Und wenn Du die SSLwasAuchImmerNummer direkt an das Benutzer-Kennwort anhängst, dann kann blat das nicht trennen, und hängt diese Numerm direkt an das Kennwort an. Das damit natürlich falsch ist.

Jan

Re: BLAT-aufruf

Verfasst: Mi, 10. Jun 2015 16:27
von Rolf Ramacher
Jan,

da bist du falsch informiert - GMX hat auch SSL und damit klappt es.
Ich habe ja 2 email-Adressen einmal freent und einmal gmx - und bei GMX geht direkt raus

Re: BLAT-aufruf

Verfasst: Mi, 10. Jun 2015 18:40
von Werner_Bayern
Servus Rolf,

entscheidend ist, was Du bei cServer und cSll übergibst. Schreib das doch mal.

Re: BLAT-aufruf

Verfasst: Mi, 10. Jun 2015 18:55
von Tom
Freenet verwendet einen anderen Mailserver als GMX - und natürlich auch andere Zugangsdaten, lieber Rolf. Du kannst keine Freenet-Mails über GMX-Server verschicken. :wink:

Re: BLAT-aufruf

Verfasst: Do, 11. Jun 2015 10:03
von Rolf Ramacher
@Tom
da habe ich mich vielleicht falsch ausgedrückt, oder du hast es anders verstanden. Ich habe 2 verschiedene email-Adressen GMX + freenet.

Natürlich haben diese beiden verschiedene Namen, passworte ssl-Nr. usw.

so sieht der aufruf der Funtkion auf.

Code: Alles auswählen

			email_senden("Reklamation importiert",cArt+space(2)+cUser+space(2)+cReknr,cEmail,cAbsEmail,cPw,cSsl,cEmailUser,cServer)

hier die Functon email_senden

Code: Alles auswählen

#include "dll.ch"

Function email_senden(cBody,csubject,cTo,cFrom,cPw,cSsl,cName,cServer)
LOCAL cBlatDLLName := "BLAT.DLL", cParameter:="", nRueck:=0

cParameter := " -body " + Chr(34) + cbody + Chr(34)+ ;
" -subject " + Chr(34) + cSubject + Chr(34) + ;
" -to " + cTo + ;
" -server " + cServer + " -u " +cName + " -f " + cFrom + " -pw "+cPw+cSsl



nBlatDll := dllLoad(cBlatDLLName)

IF nBlatDll > 0
	nRueck := DllCall(nBlatDll, DLL_STDCALL , "Send", cParameter) // *** Send muss genauso geschrieben werden.
ENDIF
Return Nil
cSSl sieht so aus " - port "

so werden dann die entsprechenden Werte befüllt

Code: Alles auswählen

	cSsl+=alltrim(Sys->Ssl)
	cEmailUser:=alltrim(Sys->User)
	cServer:=alltrim(Sys->Server)
	cAbsEmail:=alltrim(Sys->Email)
bei GMX cssl dann so aus " -port 587 " bei freenet dann so " -port 465"

auch alle anderen werte bei freenet stimmen. GMX läuft alles richtig. bei freenet passiert nichts. die Frage ist warum ?
gibt es bei freenet etwas Besonderes zu beachten?

Re: BLAT-aufruf

Verfasst: Do, 11. Jun 2015 10:25
von Scarmo
Hallo Rolf

Meiner Meinung nach unterstützt BLAT kein SSL von sich aus... Oder verwendest Du STUNNEL, um eine SSL-Verbindung herzustellen?

Gruss
Marco

Re: BLAT-aufruf

Verfasst: Do, 11. Jun 2015 10:51
von Rolf Ramacher
Hi Marco

jetzt wird es noch verrückter. ich habe jetzt cSSl mal rausgenommen . GMX funktioniert - freenet immer noch nicht. dann werde ich mich wohl mal nach einer anderen Methode umschauen.

Hat denn jemand das mit SSL bereits gemacht ?

Re: BLAT-aufruf

Verfasst: Do, 11. Jun 2015 13:41
von Wolfgang Ciriack
Hallo Rolf,
versuche doch auch bei freenet mal den Port 587.
STARTTLS:
SMTP (Versand): 587
IMAP (Empfang): 143
POP3 (Empfang): 110
SSL/TLS
SMTP (Versand): 587
IMAP (Empfang): 993
POP3 (Empfang): 995
SMTPS
SMTPS (Versand): 465
IMAP (Empfang): 993
POP3 (Empfang): 995

Re: BLAT-aufruf

Verfasst: Do, 11. Jun 2015 14:40
von Rolf Ramacher
Wolfgang also auch mit 587 passiert bei freenet nichts.

ich bin natürlich jetzt auch am überlegen welche Richtung ich hier einschlage. Ich muss auch emails lesen und die Anhänge in sep. Verzeichnisse speichern. Ein Freund von mir hat den lesen-prototyp fertig . allerdings noch bevor die SSL-Geschichte kam. auch mit der blat.dll - wenn das generell ein Problem darstellt. müssen wir einen anderen Weg gehen. oder liegt es hier dabei tatsächlich an freenet.

Hat jemand hierzu Erfahrung bereits gesammelt?

Re: BLAT-aufruf

Verfasst: Do, 11. Jun 2015 17:32
von Wolfgang Ciriack
Marshallsoft: See4XB.

Re: BLAT-aufruf

Verfasst: Fr, 19. Jun 2015 9:45
von Rolf Ramacher
Marco

wie funktioniert das denn mit STUNNEL? Hast du ein beispiel ?

Re: BLAT-aufruf

Verfasst: Fr, 19. Jun 2015 11:59
von mini990
Hallo Rolf,
sieh Dir mal diesen Thread an.
Da hab ich was zu STunnel und Blat geschrieben...
http://xbaseforum.de/viewtopic.php?f=30&t=4862

Gruß Stefan

Re: BLAT-aufruf

Verfasst: Fr, 19. Jun 2015 13:30
von Rolf Ramacher
ja danke Stefan,

werde mich mal damit auseinandersetzen. aber wie übergebe ich das an die dll

so sieht mein code bisher aus.

Code: Alles auswählen

Function email_senden(cBody,csubject,cTo,cFrom,cPw,cSsl,cName,cServer)
LOCAL cBlatDLLName := "BLAT.DLL", cParameter:="", nRueck:=0

cParameter := " -body " + Chr(34) + cbody + Chr(34)+ ;
" -subject " + Chr(34) + cSubject + Chr(34) + ;
" -to " + cTo + ;
" -server " + cServer + " -u " +cName + " -f " + cFrom + " -pw "+cPw+cSsl



nBlatDll := dllLoad(cBlatDLLName)

IF nBlatDll > 0
	nRueck := DllCall(nBlatDll, DLL_STDCALL , "Send", cParameter) // *** Send muss genauso geschrieben werden.
ENDIF
Return Nil
cSSl würde ja dann wegfallen.

kann man mit STUNNEL auch emails lesen und Dateianhänge in einem verzeichnis abspeichern. das muss ich nämlich dann auch