![]() |
e-Mail aus Prg heraus versenden
Liste der Anhänge anzeigen (Anzahl: 1)
Hi,
da in letzter Zeit häufiger mal fragen gestellt wurden, wie: Zitat:
Zitat:
|
Re: e-Mail aus Prg heraus versenden
Wäre das nicht in der CodeLib besser aufgehoben?
|
Re: e-Mail aus Prg heraus versenden
Oder so (ohne INDY):
Delphi-Quellcode:
Vorteil: INDY wird nicht benötigt.
Function UrlEncode (Const s : String) : String;
Var i : Integer; Begin Result := ''; For i:=1 To length (s) do If ord (s[i]) in [33..127] then Result := Result+s[i] Else Result := Result+'%'+IntToHex (Ord(s[i]),2); End; Procedure SendMailViaStandardEMailClient (aRecipients, aSubject, aBody, aAttachment); Var aMailCmd : String; Begin aMailCmd := 'mailto:'+aRecipients + '?subject='+aSubject; if aBody <>'' Then aMailCmd := aMailCmd + '&body='+aBody; If aAttachments <>'' Then aMailCmd := aMailCmd + '&attach="' + aAttachment +'"'; aMailCmd := UrlEncode (aMailCmd); ShellExecute (Application.Handle,'OPEN', PChar (aMailCmd), nil, nil, SW_SHOWDEFAULT); End; Nachteil: Klappt nicht mit allen email clients. Lotus z.B. öffnet nur den Dialog zum Verfassen einer mail. Alternativ zu Indy kann man auch die ICS Kompoenten von Francois Piette ( ![]() |
Re: e-Mail aus Prg heraus versenden
|
Re: e-Mail aus Prg heraus versenden
|
Re: e-Mail aus Prg heraus versenden
Moin, moin, alzaimar,
Deine Variante ist nett, eignet sich aber nicht zum Versand von eMail's, ohne das der Anwender etwas tun muß bzw. etwas mitbekommt. Bevor jetzt jemand nach dem Datenschutz schreit, ich verwende soetwas, um von meinen Prog's Fehlermeldungen/Screenshot/Fehlerdateien zu bekommen. Davon brauch der Anwender nichts wissen, es reicht vollkommen, wenn er mich anruft und ich ihm sagen kann, wo das Problem liegt und das bereits ein Update für Ihn bereit steht. (Eindruck-Schind) :lol: :lol: :lol: Zitat:
Oder hab ich da was übersehen ? |
Re: e-Mail aus Prg heraus versenden
Mailhost muss ich dort einen angeben? bzw welchen? Oder besser gefragt wo finde ich solche freien SMTP Server?
|
Re: e-Mail aus Prg heraus versenden
Nun, du musst dies E-Mail halt bei irgendeinem SMTP-Server abladen ...
Vielleicht bietet dein Provider ja soetwas an ... Normalerweise hast du aber schon bei deine E-Mail-Adresse enen dabei, damit du E-Mails senden kannst. |
Re: e-Mail aus Prg heraus versenden
@Alle: Wegen des Tippfehlers (
![]() @Kalmi01: Wat? Kostet wat? Seit wann denn das? Check ich mal.... :-D Stimmt nicht, ist Freeware. Steht auf der Homepage. Download geht auch. Aber die Applikation IMD (Instant Messaging Delphi) kostet was. Vielleicht hast Du das verwechselt. Meine Variante ist wirklich nicht absolut tauglich, zeigt aber, wie leicht man es sich machen kann. Soweit ich mich erinnere, reagiert Outlook und OutlookExpress ordendlich auf das mailto und unterstützt alle Features, ich meine, mit irgend einer Option schicken die das gleich weg, aber wer benutzt schon Outlook (ausser er ist suizidal angehaucht :mrgreen: ). Also: Falls INDY nicht überall verfügbar ist, sollte man die ICS-Komponenten nehmen (meine Meinung). |
Re: e-Mail aus Prg heraus versenden
hi leute...
habe mir mal grade die komponente von kalmi01 angeeignet und ausprobiert...allerdings erhalte ich folgenden fehler : Socketfehler # 10053 die software hat die verbindung unterbrochen kann mir einer sagen was das bedeutet? thx im vorraus. mfg stoni |
Re: e-Mail aus Prg heraus versenden
|
Re: e-Mail aus Prg heraus versenden
@stonimahoni: Googel doch einfach mal nach 10053... Ist ein allgemein bekannter Fehler....
|
Re: e-Mail aus Prg heraus versenden
@ alzaimar : hab ich gemacht aber irgendwie hilft nix :/
mtu hab ich verändert aber bringt nix und sonst hab ich nix gescheites gefunden und mit connectiontimeout unter outlook und outlook express brauch ich ja nicht arbeiten, zumal die kompo ja alles über indy macht und somit ohne ms zeugs. mal weiterschauen und ansonsten andere lösung versuchen mfg @ catbytes : das sakemail funktioniert genausowenig :/ selber fehler : socketfehler 10053 :/ *grummel* hat jmd ne lösung für mein prob ? |
Re: e-Mail aus Prg heraus versenden
Hi Alzaimar,
haben Deinen folgenden Code ausprobiert aber es öffnet sich nur Outlook-Express mit den angegebenen Daten aber ohne Attachment.
Delphi-Quellcode:
Du sprachst von unterschiedlichen Verhalten bei verschiedenen Mail-Programmen, ist das auch
Function UrlEncode (Const s : String) : String;
Var i : Integer; Begin Result := ''; For i:=1 To length (s) do If ord (s[i]) in [33..127] then Result := Result+s[i] Else Result := Result+'%'+IntToHex (Ord(s[i]),2); End; Procedure SendMailViaStandardEMailClient (aRecipients, aSubject, aBody, aAttachment: string); Var aMailCmd : String; Begin aMailCmd := 'mailto:'+aRecipients + '?subject='+aSubject; if aBody <>'' Then aMailCmd := aMailCmd + '&body='+aBody; If aAttachment <>'' Then aMailCmd := aMailCmd + '&attach="' + aAttachment +'"'; aMailCmd := UrlEncode (aMailCmd); ShellExecute (Application.Handle,'OPEN', PChar (aMailCmd), nil, nil, SW_SHOWDEFAULT); End; so eins ? Wie weit übernimmt Lotus die Daten ? Gruß Frank |
Re: e-Mail aus Prg heraus versenden
Zitat:
|
Re: e-Mail aus Prg heraus versenden
Zitat:
Da könnte ja weiss-Gott-was per email verschickt werden :-( |
Re: e-Mail aus Prg heraus versenden
Liste der Anhänge anzeigen (Anzahl: 1)
Ich habe mit Delphi ein Programm geschrieben, mit dem man Mails mit Anhang versenden kann! Mit dem Prog kann man bis jetzt nur senden, nicht empfange, was auch erstmal reicht!
Wenn ich die Unit SendMail einbinde und die Parameter übergebe, funktioniert alles einwandfrei! Wenn ich dann aber eine Mail verschicken will, kommt fast immer eine Fehler (siehe Anhang). Da muss ich immer erst mit Outlook Express meine Mails abrufen, bevor das geht. Wie kann ich es einrichten, dass auch Benutzer ohne Outlook E-Mails versenden können? |
Re: e-Mail aus Prg heraus versenden
Herzlich willkommen in der Delphi-PRAXiS.
Für mich sieht es so aus, als ob du dich erst einmal per POP3 an deinen mail server wenden musst, damit er SMTP akzeptiert - ein übliches Verfahren zur Erhöhung der Sicherheit. Es muss ja nicht Outlook sein, du kannst das ja auch in deinem Programm erledigen. Und du hättest ruhig auch einen eigenen thread aufmachen dürfen. Freundliche Grüße vom marabu |
Re: e-Mail aus Prg heraus versenden
Erstma danke für den Tip!
Ich hoffe, es stört euch nicht, wenn ich nochma kurz hier ne Frage stelle und nicht gleich nen neuen Thread aufmache. Ich kenn das aus anderen Foren, dass man bei sowas sofort auf die Suche verwiesen wird. (Soll jetzt keine schlechtes Vorurteil euch gegenüber sein!). Zu meiner Frage: Muss ich mich vorher mit dem Pop3 Server des Senders oder des Empfängers verbinden? Ich tippe einfach mal auf den Sender, weil der Empfänger kann das ja nicht voraussehen, dass er ne Mail bekommt! Und vielleicht kann mir auch mal jemand sagen, wie man das macht, oder zumindest, wo ich was dazu finde! |
Re: e-Mail aus Prg heraus versenden
Es ist schwer dir zu helfen, wenn du weder deine Delphi Version mitteilst, noch die verwendeten Komponenten genau bezeichnest. Am besten ist es, wenn du den Quelltext zeigst, mit dem du Probleme hast. Sind es nur wenige Zeilen, dann kannst du sie mit dem Button Delphi-Code aus der Werkzeugleiste des Beitragseditors in die Delphi tags [ delphi] und [ /delphi] einpacken. Ist es mehr, dann hänge es als ZIP Archiv an.
marabu |
Re: e-Mail aus Prg heraus versenden
Also ich arbeite mit Delphi 2005 PE und Indy 10!
Hier mal der Quellcode: (ich setzte erstmal voraus, dass es ein Web.de Konto ist
Delphi-Quellcode:
Ich weiß, dass das mit dem Dateipfad ni so elegant gelöst ist, aber das interessiert zur Zeit nicht!
procedure TForm1.sendenClick(Sender: TObject);
var empfänger, absender, subject, nachricht, datei:string; begin empfänger:=adresse.Text; //Empfänger-Mail absender:=name.Text; //Absendername oder Mail subject:=betreff.Text; //Betreff nachricht:=text.Text; //Nachricht datei:=pfad.Text; //Anhang Send_Mail('smtp.web.de', absender, empfänger, subject, nachricht, datei); //Mail senden end; //Edit: Erstma Danke, dass ihr mir helfen wolltet, aber ich hab es durch probieren jetzt doch selber hinbekommen. :bounce2: |
Re: e-Mail aus Prg heraus versenden
Dein Fehlermeldung spricht doch für sich. Du musst Dich erst bei POP3 Server anmelden, bevor du Senden kannst. Steht doch genau so drin.
Die Frage, ob du Dich zum POP3 Server des Empfängers verbinden sollst reicht 2 mal klar denken. 1. Was hat der Empfänger mit deinem Sender zu tun 2. Woher willst Du den POP3 Server des Empfängers kennen, geschweige denn die Zugangsdaten dazu. :mrgreen: Damit sollte die Frage doch beantwortet sein, oder ? Schnapp dir die IdPOP3 Kompo auf dein Form, log dich beim POP3 Server von web.de unter deinem Account an, und log dich dort wieder aus. Anschliessend solltest Du in der Lage sein über eine gewisse Zeitspanne hinweg EMails zu verschicken, sofern web.de nicht noch andere Blockmechanismen eingebaut hat. Das sollte eine neue Fehlermeldung jedoch dann zeigen. |
Re: e-Mail aus Prg heraus versenden
Jetzt geht ja alles, trotzdem Danke!
|
Re: e-Mail aus Prg heraus versenden
Hi,
ich habe auch mal was zu der Thematik geschrieben, rausgekommen ist ne fertige Klasse womit eigentlich jeder klar kommen sollte. ![]() Gruß DataCool |
Re: e-Mail aus Prg heraus versenden
Zitat:
Zumindest, im Privatbereich, da wollte ich sowas auch nicht ! Ich setze diesen Mechanismus (nur) in der Firma ein ! Zum Verständnis: Ich betreue ~80 Vollzeit-Anwender plus ~200 Gelegenheits-Anwender als One-Man-Show. 1. + 2.-Level-Support, Software-Entwicklung und was sonst noch so anfällt. Ohne vorgenannte Mechanismen hätte ich schon Magengeschwüre, gross wie Medizinbälle. Der Feind eines Jeden Adminstrators/Programmierers ist der Anwender, weil: 1. Fehlermeldung total WischiWaschi 2. Fehlermeldung erst nach 10 weiteren Versuchen 3. Problem nicht nachvollziehbar, wenn ich remote auf dem Rechner bin Seit Einführung des obigen Mechanismus: 1. erkenne ich (fast) alle Probleme noch vor dem Anwender 2. kann sie beheben oder entsprechende Massnahmen einleiten 3. Schlafe länger und ruhiger |
Re: e-Mail aus Prg heraus versenden
Hi,
ich benutze den obrigen Quellcode um mir "Warn-Email" von meinen Server schicken zu lassen. Z.B. wenn ein Logfile größer als "erlaubt" wird oder bei kritischen Server Anwendungen ein Fehler auftritt. Dasist sehr praktisch und hilft Fehler zu vermeiden bevor Sie überhaupt auftreten. Gruß Data |
Re: e-Mail aus Prg heraus versenden
Also wenn man email aus dem programm nur versenden will, dann kann man es mit hilfe eines php getaway machen. Die vorteile:
1. ist einfacher... kein smtp server benötigt 2. man kann dann, wenn man es braucht, die firewall umgehen, wenn man es mit hilfe eines versteckten Internet Explorer festers macht, denn meistens ist ie bei der firewall freigegeben. nachteile: man braucht einen server, wo man die getaway bzw. den php script laufen lässt. |
Re: e-Mail aus Prg heraus versenden
Hi,
und den habe ich in diesem Fall bei meinen Windows Server nicht ;-) Sonst wäre Deine Variante sicherlich einfacher ;-) Gruß Data |
Re: e-Mail aus Prg heraus versenden
Zitat:
Wie bei deinem Windows Server? |
Re: e-Mail aus Prg heraus versenden
Hi,
ja das war auf Deine Message bezogen, auf meinem Windows-Server läuft kein PHP. Somit kann ich das nicht über einen "PHP-Gateway" machen. Mehr wollte ich gar nicht sagen ;-) Gruß Data |
Re: e-Mail aus Prg heraus versenden
Was ist es denn für ein server??? ich meine, wer vermietet schon webserver (vor allem windows server) ohne php server? Es doch ein bischen unlogisch... und wenn es ein root server ist (was ich bezweifle)0, kannst du ja das selber installieren...
|
Re: e-Mail aus Prg heraus versenden
@XHelp:
Wer hat gesagt das es sich um einen Webserver handelt ? Nehmen wir mal an der steht es ist ein Windows-Server der einfach in einem Firmennetz als Server steht. Von aussen auf bestimmten Ports für meine Anwendungsdienste erreichbar ist. Treten da jetzt Fehler auf oder Plattenplatz wird knapp oder oder oder ... Dann schickt mein Dienst mir ne Mail und damit konnte ich schon so manches Problem im Keim ersticken bzw. den Fehler beheben bevor der Kunde mir den Fehler überhaupt gemeldet hat. Gruß Data |
Re: e-Mail aus Prg heraus versenden
naja... dann kannst du doch noch einen server suchen, wo es php gibt... gibts ja so viele kostenlose web hoster...
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 01:33 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz