AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Mailitem nach senden abspeichern

Ein Thema von JannesDKS · begonnen am 19. Jul 2010 · letzter Beitrag vom 20. Jul 2010
Antwort Antwort
JannesDKS

Registriert seit: 2. Feb 2009
Ort: Hamburg
61 Beiträge
 
#1

Mailitem nach senden abspeichern

  Alt 19. Jul 2010, 19:46
Hallo Leute,

ich habe da ein kleines Problem:

ich zeige ein Mailitem modal an und will, nachdem der user die Mail gesendet hat diese abspeichern.
Beispielcode

Delphi-Quellcode:
     Mailitem.display(true); // Modal anzeigen
     if not DirectoryExists('C:mails\') then
       ForceDirectories('C:\mails\');
     MailItem.SaveAs('C:\mails\123.msg',olMSG);
Das problem ist ja, dass nach dem Senden die Mail erst in den Ordner postausgang und dann in Gesendete Objekte wandert.
Deswegen geht mein Code schonmal nicht
Hat jemand vielleicht schonmal sowas gemacht?
LG

Jannes

Geändert von JannesDKS (19. Jul 2010 um 19:49 Uhr)
  Mit Zitat antworten Zitat
Benutzerbild von sx2008
sx2008

Registriert seit: 16. Feb 2008
Ort: Baden-Württemberg
2.332 Beiträge
 
Delphi 2007 Professional
 
#2

AW: Mailitem nach senden abspeichern

  Alt 19. Jul 2010, 21:02
Du könntest die Absender-EMail-Adresse als BCC eintragen und bekommst so automatisch eine Kopie der versendeten EMail.
Das funktioniert unabhängig von der Art (SMTP, Mapi oder Automatisierung von Outlook) wie die EMail versendet wird.
  Mit Zitat antworten Zitat
JannesDKS

Registriert seit: 2. Feb 2009
Ort: Hamburg
61 Beiträge
 
#3

AW: Mailitem nach senden abspeichern

  Alt 19. Jul 2010, 21:10
Moin sx2008,

hmm, das wär ja nicht die Anforderung, die Mail soll ja als msg in einer Ordnerstruktur abgelegt werden.

ich dacht grad, ich könnte das auch wie folgt machen, erscheint mir aber nich wirklich zuverlässig, dass ich die so immer erwische
Delphi-Quellcode:
 Mailitem.display(true);
 NmSpace := OutlookApplication.GetNamespace('MAPI');
  NmSpace.Logon(EmptyParam, EmptyParam, False, True);
  Folder := NmSpace.GetDefaultFolder(olFolderOutbox);
  //Folder.Display;
  MailItem := Folder.Items(1); // die mail ist jetzt im Postausgang
  if not DirectoryExists('C:mails\') then
    ForceDirectories('C:\mails\');
  MailItem.SaveAs('C:\mails\123.msg',olMSG);
:

das haben bestimmt schon viele besser als so gemacht
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
44.051 Beiträge
 
Delphi 12 Athens
 
#4

AW: Mailitem nach senden abspeichern

  Alt 19. Jul 2010, 21:26
Sendet dein Programm die Mail?
Wenn ja, warum speicherst du sie dann nicht direkt (vor oder nach) dem Senden?

Ich bin mir grade nicht sicher, aber kann man Outlock nicht so einstellen, daß gesendete Mails garnicht nach Gesendet verschoben/gespeichert werden?

Delphi-Quellcode:
if not DirectoryExists('C:mails\') then
  ForceDirectories('C:\mails\');
Ich hoffe das C:mails\ (ohne \) ist hier ein Schreibfehler (zum Glück mal ohne böse Auswirkungen, an dieser Stelle).

PS: DirectoryExists ist aber sowieso nicht nötig, da ForceDirectories dieses auch prüft.
Neuste Erkenntnis:
Seit Pos einen dritten Parameter hat,
wird PoSex im Delphi viel seltener praktiziert.
  Mit Zitat antworten Zitat
JannesDKS

Registriert seit: 2. Feb 2009
Ort: Hamburg
61 Beiträge
 
#5

AW: Mailitem nach senden abspeichern

  Alt 20. Jul 2010, 09:27
Moin himitsu,

ja, das Programm sendet die Mail, der Witz ist ja, dass der Anwender die Mail ändern können soll und ich sie erst anschließend speichere, so das die Änderungen des Anwenders mit drin sind.
Zu verhindern, dass die Mail verschoben wird, wär schonmal nicht schlecht. Dann könnte ich sie anschließend, wenn ich sie gespeichert habe, mit move in die Gesendeten Objekte verschieben. Das müsste dann aber über die Properties des MailItems gehen, an Outlook direkt darf ich keine Einstellungen ändern


der Pfad wird eigentlich anders zusammengesetzt, hab ich nur für tests eben geändert, aber den Fehler werd ich sofort korrigieren
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 14:43 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz