kostenloser Webspace werbefrei: lima-city


C# Mail-Attachment Problem

lima-cityForumProgrammiersprachenProgrammieren mit .NET & Mono

  1. Autor dieses Themas

    marius71

    marius71 hat kostenlosen Webspace.

    Hallo,
    ich sende via C# email mit Anhängen im PDF Format.
    Allerdings sind meine Anhang-Namen anscheinend so lang, das am Ende einige zeichen abgeschnitten werden, sodass am Ende nicht mehr .pdf steht.
    die Datei kann man zwar noch mit "öffnen mit" geöffnet werden, allerdings wird kein standardprogramm angezeigt, da kein dateityp angegeben ist. Und so kann ich es den Kunden nicht zuschicken.
    der Dateityp MUSS angegeben sein, damit die einfach einen Klick machen können und das PDF geöffnet wird.

    Das attachment erstelle ich so:

    Attachment myAttachment = new Attachment(Pfade[z]);

    myAttachment.Name = fi.Replace("ä", "ae").Replace("ü", "ue").Replace("ö", "oe").Replace("ß", "ss");
    mailMsg.Attachments.Add(myAttachment);

    dann habe ich noch das hier probiert:

    //sicherstellen das am Ende immer .pdf steht
    myAttachment.Name = myAttachment.Name.Substring(0, myAttachment.Name.Length - 4) + ".pdf";

    aber das tut es auch nicht =(
    und es ist auch keine Lösung den Dateinamen kleiner zu machen ;-) die informationen werden später noch von mir benötigt

    Beitrag zuletzt geändert: 23.2.2011 23:46:14 von marius71
  2. Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!

    lima-city: Gratis werbefreier Webspace für deine eigene Homepage

  3. Hallo,

    wie lange sind den deine Filenamen? Wenn in "Pfad" der komplette Pfad + Dateinamen steht, dann solltest du darauf achten, dass
    die 255 Zeichen nicht überschritten werden.

    Gruß
    Holger
  4. Hallo Marius,

    hast du dir mal die statischen Methoden von Path (aus System.IO) angeschaut?

    Da gibt es auch was für die Dateinamenerweiterungen (“GetFilenameWithoutExtension“ oder so), das erspart dir zumindest das Rumhandtieren mit Substring und Length.

    Gruß

    Udo
  5. m**********n

    Dokumentation: http://msdn.microsoft.com/en-us/library/9089e309.aspx#Y456

    Also (wenn ich dein Problem richtig verstanden hab) machst du das so:
    Attachment myAttachment = new Attachment(Pfade[z], "PDF");


    Das müsste dem Clienten sagen, dass es sich um eine PDF fiel handelt.

    Allerdings solltest du evtl. diese Überladung verwenden, dann übergibst du einen Stream und deinen Dateinamen:
    http://msdn.microsoft.com/en-us/library/6sdktyws.aspx
  6. Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!

    lima-city: Gratis werbefreier Webspace für deine eigene Homepage

Dir gefällt dieses Thema?

Über lima-city

Login zum Webhosting ohne Werbung!