LabVIEWForum.de
"File Access Denied" nach EMail senden mit .NET - Druckversion

+- LabVIEWForum.de (https://www.labviewforum.de)
+-- Forum: LabVIEW (/Forum-LabVIEW)
+--- Forum: LabVIEW Allgemein (/Forum-LabVIEW-Allgemein)
+---- Forum: ActiveX & .Net (/Forum-ActiveX-Net)
+---- Thema: "File Access Denied" nach EMail senden mit .NET (/Thread-File-Access-Denied-nach-EMail-senden-mit-NET)



"File Access Denied" nach EMail senden mit .NET - Fidel90 - 03.11.2012 10:04

Hallo und guten Morgen zusammen Smile

Ich bastel gerade an einem neuen Projekt und zerbreche mir seit 2 Tagen den Kopf über einem wahrscheinlich recht simplem Problem:

In meinem Programm wird das Bild einer Webcam als JPG gespeichert (Write JPEG File, aus der Vision Palette, [attachment=42105]) und anschließend im Anhang einer EMail verschickt. Den Code zum Senden der Mail mit .NET habe ich aus dem Netz und leicht angepasst, was an sich auch ganz gut funktioniert.

Mein Problem ist, wenn ich nach dem Senden der EMail ein neues Bild unter dem gleichen Namen abspeichern will, bekomme ich einen Error: File Access Denied. Durch ein wenig herumsuchen im Netz bin ich auf die Idee gekommen, dass wohl beim Versenden der EMail die erstellten Referenzen nicht geschlossen wurden und daher die Datei "noch geöffnet" ist. Wenn ich das Programm beende und nochmal starte, dann kann ich ohne Probleme die alte Datei überschreiben. Das bestätigt meine Vermutung bzgl. der Referenzen.

Ich habe daher im Code zum Senden der EMail mal an einigen Stellen (insbesondere beim versenden des Anhangs, [attachment=42106]) die Referenzen geschlossen. Allerdings führt das zu keiner Änderung, der Fehler bleibt bestehen.

Mir stellt sich nun die Frage: Bin ich auf dem Holzweg oder habe ich an den falschen Stellen angesetzt. Ich blicke bei dem .Net-Code nicht wirklich durch, da er wie gesagt nicht von mir ist... Wink

Danke schonmal für die Hilfe.

Mit freundlichen Grüßen
Florian

lv11_img


RE: "File Access Denied" nach EMail senden mit .NET - jg - 03.11.2012 10:43

Da du die ganzen Methoden und Eigenschaftsknoten in deinem Screenshot nur in ihrer Kurzform ohne Namen anzeigst, kann man gar nichts analysieren.
Am besten lädst du mal dein VI hoch.

Zum Glück gibt es noch Google, denn das hatten wir doch schon mal:
http://www.labviewforum.de/Thread-Email-mit-Anhang-Datei-kann-nicht-mehr-geoeffnet-werden
und in diesem Thread wird hierauf verlinkt:
http://www.labviewforum.de/Thread-Datei-loeschen?pid=121256#pid121256

Gruß, Jens


RE: "File Access Denied" nach EMail senden mit .NET - Fidel90 - 03.11.2012 11:05

Hallo Jens, danke für die schnelle Antwort! Smile

AttachmentDispose bewirkt tatsächlich genau das, was ich gebraucht habe. Nun kann ich auch ohne das Programm zu beenden mehrfach EMails senden und die gleiche Datei überschreiben.

Nun noch eine kleine Frage: In meinem EMail Code ist das Senden eines Anhangs optional, wird also in einer Case-Struktur abgearbeitet. Damit die Mail zusammen mit Anhang versendet wird, muss ich den Anhang am Ende des Codes löschen, also außerhalb der Case-Anweisung. Aber welche Referenz muss ich nun mit AttachmentDispose verbinden, wenn die Case-Anweisung im True-Teil steht und damit erst gar kein Anhang erstellt wird?

mfg


RE: "File Access Denied" nach EMail senden mit .NET - Fidel90 - 03.11.2012 12:30

Ok, habs rausgefunden. Habe einfach noch im True-Zweig ein "leeres" Attachment erzeugt, so läuft das Programm in keinen Fehler und die Mails werden mit und ohne Anhang erfolgreich versendet.

Danke nochmal Smile