Email verfassen über VB.NET - Probleme mit Attachements

  • Hallo zusammen.

    Ich schreibe derzeit an einer Anwendung, die aus VB.NET eine Email im David verfasst. Soweit auch alles wunderbar. Nur scheitere ich grade unerklärlicherweise an dem Hinzufügen von Attachments.

    Dies ist ein Codefragment:

    Code
    oApp = CreateObject("DVOBJAPILib.DvISEAPI")oAcc = oApp.Logon("", "", "", "", "", "NOAUTH")oArchive = oAcc.GetSpecialArchive(102)oMailItem = oArchive.NewItem(2)(...)oMailItem.Attachments.Add("C:\temp\467734.pdf")Dim fn As String = ""fn = "C:\TEMP\467734.pdf"oMailItem.Attachments.Add(fn)

    Natürlich ist dieses Codefragment konstruiert, um das Fehlverhalten zu verdeutlichen. Ich weiß, dass es sonst wenig Sinn ergibt :)
    Das Unerklärliche an diesem Codefragment ist, dass der Code fehlerfrei ausgeführt wird bis zur Verwendung der Variablen "fn".

    Der Befehl

    Code
    oMailItem.Attachments.Add("C:\temp\467734.pdf")


    wird fehlerfrei ausgeführt.

    Der Befehl

    Code
    oMailItem.Attachments.Add(fn)


    schlägt aber fehl! Obwohl in "fn" der gleiche Wert enthalten ist!!!

    Der ausgegebene Fehler lautet:

    Code
    COMException: Unbekannter Fehler (Ausnahme von HRESULT: 0x80004005 (E_FAIL))

    Ich bitte um Unterstützung.
    Vielen Dank

    BeSt

    There are only 10 types of people in the world:
    Those who understand binary and those who don´t.

  • Hallo

    zum Test folgedes probieren:

    Code
    Dim fn As Object

    Nicht schön, aber sollte funktionieren.

  • Nein, leider hatte das keinerlei Auswirkungen!
    Das verwirrende ist: Wenn ich den Inhalt der Variablen "fn", also den String mit dem Pfad und Dateinamen direkt in die Klammer des "Add" einfüge (also quasi hardcoded), dann klappt alles wunderbar. Irgendwie scheint er also die Variable nicht korrekt auflösen zu können!

    Bitte um Hilfe!
    Danke
    BeSt

    There are only 10 types of people in the world:
    Those who understand binary and those who don´t.

  • Erledigt... :)

    Durch Zufall bin ich auf die Lösung gekommen:
    Ich habe die Variable fn nun mit einem Typecast versehen...
    also so:

    Code
    oMailItem.Attachments.Add(CStr(fn))

    und schon funktioniert es... Warum auch immer.
    Also: Thread closed!

    There are only 10 types of people in the world:
    Those who understand binary and those who don´t.

Jetzt mitmachen!

Du hast noch kein Benutzerkonto auf unserer Seite? Registriere dich kostenlos und nimm an unserer Community teil!