Steffi: Name der erzeugten mail-Datei

Hallo,
wenn ich mit Perl eine mail erzeuge und an meinen lokalen user@localhost sende, hat die erzeugte Datei die Endung cnm.
(Wie) kann ich statt dieser die Endung eml erzeugen?
Ich arbeite mit XAMPP.
Gruß
Steffi

  1. Moin Moin!

    Zeige Deinen Code. Welches Perl-Modul benutzt Du für Mails? Hast Du dessen Doku gelesen?

    Alexander

    --
    Today I will gladly share my knowledge and experience, for there are no sweeter words than "I told you so".
    1. Moin Moin!

      Zeige Deinen Code. Welches Perl-Modul benutzt Du für Mails? Hast Du dessen Doku gelesen?

      $Sendmail_Prog  = '/XAMPP/sendmail/sendmail.exe -oi -t';
          open(MAIL,"|$Sendmail_Prog") || print STDERR "Mailprogramm konnte nicht gestartet werden\n";
          print MAIL "From: xxxxxxxx\n";
          print MAIL "Reply-to: xxxxxxxxx\n";
          print MAIL "To: xxxxxxx\n"}
          print MAIL "Subject: xxxxxxx\n\n";
      ....
          close(MAIL);

      In der Doku habe ich leider nichts gefunden.

      Alexander

      1. Moin Moin!

        Zeige Deinen Code. Welches Perl-Modul benutzt Du für Mails? Hast Du dessen Doku gelesen?

        $Sendmail_Prog  = '/XAMPP/sendmail/sendmail.exe -oi -t';
            open(MAIL,"|$Sendmail_Prog") || print STDERR "Mailprogramm konnte nicht gestartet werden\n";
            print MAIL "From: xxxxxxxx\n";
            print MAIL "Reply-to: xxxxxxxxx\n";
            print MAIL "To: xxxxxxx\n"}
            print MAIL "Subject: xxxxxxx\n\n";
        ....
            close(MAIL);

        Ausschneiden, verbrennen, die Asche in ein Stahlfaß einschweißen, darum ein weiteres Stahlfaß, mit Beton ausgießen, zuschweißen, mit einigen hübschen Gefahrensymbolen bemalen und möglichst tief vergraben.

        In der Doku habe ich leider nichts gefunden.

        Fang an mit MIME::Lite, wenn Dir das nicht reicht, findest Du in dessen Dokumentation weitere Module. Der einzige Haken an MIME::Lite ist, dass es auch defaultmäßig sendmail benutzen will, daher sollte der ERSTE Schritt nach dem Laden von MIME::Lite MIME::Lite->send("smtp"); sein.

        Alexander

        --
        Today I will gladly share my knowledge and experience, for there are no sweeter words than "I told you so".
        1. Hallo Alexander!

          Der einzige Haken an MIME::Lite ist, dass es auch defaultmäßig sendmail benutzen will, daher sollte der ERSTE Schritt nach dem Laden von MIME::Lite MIME::Lite->send("smtp"); sein.

          Was ist an sendmail problematisch, dass man es nicht verwenden sollte?

          @Steffi: Warum sollen die Mails als .eml gespeichert werden? Damit Du sie mit Outlook, Outlook Express, Windows Mail öffen kannst? An einen Account senden, den Du mit einem der drei genannten abräumst, reicht nicht?

          Viele Grüße aus Frankfurt/Main,
          Patrick

          --

          _ - jenseits vom delirium - _
          [link:hatehtehpehdoppelpunktslashslashwehwehwehpunktatomicminuseggspunktcomslash]
          Nichts ist unmöglich? Doch!
          Heute schon gegökt?
        2. Hi,

          Ausschneiden, verbrennen, die Asche in ein Stahlfaß einschweißen, darum ein weiteres Stahlfaß, mit Beton ausgießen, zuschweißen, mit einigen hübschen Gefahrensymbolen bemalen und möglichst tief vergraben.

          wie wärs, wenn Du Deine Aussagen begründen würdest?
          Steffi

      2. $Sendmail_Prog  = '/XAMPP/sendmail/sendmail.exe -oi -t';
            open(MAIL,"|$Sendmail_Prog") || print STDERR "Mailprogramm konnte nicht gestartet werden\n";

        Du erzeugst keine Datei, jedenfalls nicht mit Perl. Was du da machst, ist, die Daten mittels einer Pipe (dafür steht der senkrechte Strich) direkt an das Programm sendmail zu senden.
        Die Datei, deren Endung dich stört, muss vom empfangenden Mailsystem bzw. Mailprogramm stammen werden. Schaue in deren Dokumentation nach bzw. erkläre, was du zum Empfang benutzt und wo du die betreffende Datei gefunden hast.

        An der Verwendung des Befehls sendmail selbst ist übrigens, anders als Alexander behauptet, IMHO nichts auszusetzen.

        1. Hallo,

          Die Datei, deren Endung dich stört, muss vom empfangenden Mailsystem bzw. Mailprogramm stammen werden. Schaue in deren Dokumentation nach bzw. erkläre, was du zum Empfang benutzt und wo du die betreffende Datei gefunden hast.

          Das mail steht als Datei xxxxx.CNM in einem Ordner. Wenn ich die Datei mit Doppelklick öffne, wird sie in Notepad eröffnet. Wenn ich sie umbenenne in .eml, wird sie in Outlook Express eröffnet und ich sehe sie in HTML-Darstellung. Eine korrekte Verknüpfung der Originaldatei (-Endung) mit Outlook Express ist mir nicht gelungen. Es wird zwar auch Outlook Express geöffnet, aber es kommt die Meldung "Bei der Verbindung zum Server ist ein Fehler aufgetreten ... Socketfehler: 10061".

          Gruß
          Steffi

          1. Die Datei, deren Endung dich stört, muss vom empfangenden Mailsystem bzw. Mailprogramm stammen werden. Schaue in deren Dokumentation nach bzw. erkläre, was du zum Empfang benutzt und wo du die betreffende Datei gefunden hast.

            Das mail steht als Datei xxxxx.CNM in einem Ordner.

            Es ist schon klar, dass die Datei in irgendeinem Ordner liegt, das haben Dateien üblicherweise so an sich. Die Frage ist, wo genau, und wie sie dahin gekommen ist.

            sendmail übergibt jede Mail an ein Mailtransportsystem, das sich um die weitere Verteilung kümmert, XAMPP benutzt für diesen Zweck offenbar Mercury. Falls sich hier niemand findet, der weiß, wie man Mercury unter XAMPP konfiguriert, frage entweder in einem XAMPP- oder in einem Mercury-Forum (und lasse dir dort nicht jedes Detail aus der Nase ziehen, sondern schreibe gleich zumindest, welchen Perl-Schnippsel du benutzt und an welche Adresse die Mail gehen soll).

            Ziemlich sicher bin ich mir allerdings, dass diese .cnm-Datei nicht dafür gedacht ist, von dir direkt gelesen zu werden, auch wenn es den Anschein hat. Wenn eine E-Mail verschickt wurde, muss sie fast immer erstmal mit einem E-Mail-Programm empfangen werden, soll heißen: Wenn du in deinem Outlook-Dingens kein Konto für den lokalen Mail-Empfang eingerichtet hast und die Mail dementsprechend nicht in einem Outlook-eigenen Ordner steht, dann ist etwas verkehrt.

  2. wenn ich mit Perl eine mail erzeuge und an meinen lokalen user@localhost sende, hat die erzeugte Datei die Endung cnm.

    Der Mailserver von XAMPP ist unter Win32 Mercury, ein enger Verwandter von Pegasus-Mail. Diese Programme speichern E-Mails als *.cnm ab.

    (Wie) kann ich statt dieser die Endung eml erzeugen?

    Konfiguriere Dein XAMPP so, dass es Outlook als Mailserver verwendet (wenngleich ich bezweifle, dass das geht). Ansonsten ist es doch völlig egal, in welchem Format die Mails gespeichert werden, denn am Ende liegt's am verwendeten Mailclient. Hat also jemand Outlook und empfängt eine Mail von Dir und speichert sie ab, dann hat er seine *.eml-Datei.

    Siechfred

    --
    Hinter den Kulissen passiert viel mehr, als man denkt, aber meistens nicht das, was man denkt.