E-Mail Versand 64Bit C#

  • Moin zusammen,


    ich arbeite derzeit daran, aus einem 64 Bit C# Programm Tobit anzusteuern. Ich möchte eigentlich nur ein Mailformular öffnen und einen Anhang ergänzen.
    Dafür versuche ich die x64 DvAPI zu nutzen, aber wenn ich die dll als Verweis im Projekt hinzufüge, kommt folgende Meldung:


    "Es konnte kein Verweis auf [Pfad] hinzugefügt werden. Stellen Sie sicher, dass auf die Datei zugegriffen werden kann und sie eine gültige Assembly oder COM-Komponente ist."


    Wie bekomme ich die dll jetzt eingebunden? In der Hilfe habe ich nichts gefunden, was mir bei dem Fehler weiterhilft... ?(
    Ist es überhaupt möglich die Schnittstelle zu programmieren, ohne eine Version von Tobit installiert zu haben? ?(


    Vielen Dank schonmal!

  • Hallo Max,


    ich habe bisher immer nur mit den 32 Bit Versionen gearbeitet. Ich meine aber, auch da mal eine ähnliche Meldung bekommen zu haben. Ganz sicher bin ich mir nicht, aber ich meine mich zu erinnern, dass ich in dem Falle die dvAPI aus dem Windows Verzeichnis als Verweis eingebunden habe.


    Ich habe auf der Entwicklungsmaschine auch immer einen David Client installiert gehabt. Ebenso muss meines Wissens nach der David Client auf der Maschine installiert sein, wo Dein Programm später laufen soll, weil die API sonst gar nicht zur Verfügung steht. Zumindest habe ich das so immer gehandhabt.


    Viele Grüße
    Jens

    Es wäre schön, Deinen Vornamen zu kennen. Bitte beachte unsere Forenregeln und die Netiquette.

    ----------

    Bitte teilen/weitersagen: STARFACE Module Databasewww.sfm-db.com


    STARFACE Excellence PartnerSTARFACE Module CreatorTobit.Software Authorized Partner (Mailserver/Unified Messaging)work4all! Solution Partner (CRM/ERP)Securepoint Professional Partner (Firewall/UTM)


    1 Qubit - J.Suingwww.1qubit.deSoftware - Service - Coding

  • Hallo,


    die Installation, die auf der Website von Tobit zum Download zur Verfügung gestellt wird, funktioniert nur wenn ein entsprechender Mail-Server erreichbar ist (was auf meiner Entwicklungsmaschine eben nicht der Fall ist). Somit hat mir das nicht geholfen..


    Ich habe jetzt einen Offlineinstaller vom Endkunden zur Verfügung gestellt bekommen. Nun konnte ich die DLL wie gewünscht einbinden!


    Gruß Max

  • Moin,
    ich habe noch mal eine Frage zu der Thematik, vielleicht kann mir ja jemand helfen.
    Ich habe es jetzt hinbekommen, Mails zu versenden. Ich hätte es aber gerne, das sich das E-Mail Formular öffnet und nicht direkt eine Mail verschickt wird.. ist das möglich mit der dvAPI oder habe ich mich damit vielleicht schon "verrannt"?

  • Hallo Max,


    Du musst zunächst eine Nachricht erzeugen und speichern und diese dann mittels dvwin32.exe (David Client) und passendem Parameter öffnen. Nach dem versenden solltest Du die gespeicherte Nachricht wieder löschen - durch das Senden des Benutzers im Client wird eine neue Datei gelöscht, daher wird diese "temporäre" Datei nicht mehr benötigt und würde nur unnötig Speicherplatz verbrauchen.


    Schau mal hier ab dem Absatz "Eine Alternative wäre..."



    Gruß Jens

    Es wäre schön, Deinen Vornamen zu kennen. Bitte beachte unsere Forenregeln und die Netiquette.

    ----------

    Bitte teilen/weitersagen: STARFACE Module Databasewww.sfm-db.com


    STARFACE Excellence PartnerSTARFACE Module CreatorTobit.Software Authorized Partner (Mailserver/Unified Messaging)work4all! Solution Partner (CRM/ERP)Securepoint Professional Partner (Firewall/UTM)


    1 Qubit - J.Suingwww.1qubit.deSoftware - Service - Coding

  • Hallo,


    Danke für die Hinweise. Ich habe es jetzt wie folgt probiert:

    Problem: DVEmlFromMailItem gibt immer 0 zurück... Ich verstehe nicht warum? Ich gebe ihm ein MailItem und einen Pfad, wie in der DvAPI Hilfe im Beispiel gezeigt wird. Was mache ich falsch?

  • Hallo Max,


    ich glaube da hast Du etwas falsch verstanden.


    Was Du da versuchst ist eine Mail zu erzeugen und diese dann als EML zu exportieren und anschließend zu öffnen. Das wird nicht klappen zur Weiterverarbeitung bzw. zum versenden, da man EML Datei nicht erneut versendet kann (meine ich).


    Das Exportieren der EML klappt vermutlich nicht, weil Du die erzeugte Datei noch gar nicht gespeichert hast. Da fehlt ein oMailItem.Save(). D.h. Du hast zwar ein MailItem im Speicher erzeugt, aber keine Datei auf Fileebene.


    Wenn Du die Datei gespeichert hast (bei .Save() kannst Du einen Pfad übergeben, z.B. den Ausgang des Users oder ein temporäres Verzeichnis), dann öffnest Du diese Datei indem Du den Pfad zur gerade gespeicherten Datei übergibst. oMailItem._ID enthält die ID der Datei nach dem Speichern, die Du mit dem /POS=n Parameter an die dvwin32.exe übergeben kannst.


    Hier gibt's auch ein Beispiel in VB.Net



    Gruß Jens

    Es wäre schön, Deinen Vornamen zu kennen. Bitte beachte unsere Forenregeln und die Netiquette.

    ----------

    Bitte teilen/weitersagen: STARFACE Module Databasewww.sfm-db.com


    STARFACE Excellence PartnerSTARFACE Module CreatorTobit.Software Authorized Partner (Mailserver/Unified Messaging)work4all! Solution Partner (CRM/ERP)Securepoint Professional Partner (Firewall/UTM)


    1 Qubit - J.Suingwww.1qubit.deSoftware - Service - Coding

Jetzt mitmachen!

Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!