Vielen Dank
Thierry
redest Du da von Programmierung unter VBA?
Ansonsten könntest Du es mit einem doppelklick auf die Datei versuchen!
Gestern lief noch alles, ich habe nichts gemacht!
Bitte in der Newsgroup antworten, damit jeder davon was hat
Brav...@datenschutzministerium.de
> Wie kann ich eine .msg Datei mit Hilfe des Outlook Objekt Modells
öffnen und
> diese dann bearbeiten?
ich habe mit meiner Antwort ein wenig gewartet, aber es scheint auch
keine bessere zu geben.
Also, das OL-Objektmodell bietet Dir direkt keine Möglichkeit. Über
Extended Mapi geht das wohl, ist aber von VB(A) aus nicht zu erreichen.
Die Redemption.dll (www.dimastr.com) kann das, kostet aber einiges.
--
Viele Grüße
Michael Bauer
sehr vorbildlich - klasse :-)
> Wie kann ich eine .msg Datei mit Hilfe des Outlook Objekt Modells
öffnen und
> diese dann bearbeiten?
ich hätte noch einen Tag länger warten sollen - oder zwei Gedankengänge
mehr anstellen...
Die folgenden Zeilen funktionieren, könnten aber gut noch optimiert
werden; dazu wünsche ich Dir viel Freude.
Der Fkt. "OpenMailFromFile" muss der komplette Dateiname übergeben
werden, dafür gibt´s als Belohnung einen Verweis auf das geöffnete
MailItem zurück.
<Beispiel>
Private Declare Function ShellExecute Lib "shell32.dll" Alias
"ShellExecuteA" _
(ByVal hwnd As Long, ByVal lpOperation As String, _
ByVal lpFile As String, ByVal lpParameters As String, _
ByVal lpDirectory As String, ByVal nShowCmd As Long) As Long
Private Const NORMALFOCUS As Long = 1
Private Declare Sub Sleep Lib "kernel32" (ByVal dwMilliseconds As Long)
Private Sub StartTest()
Dim sFile As String
Dim olMail As Outlook.MailItem
sFile = "c:\mail.msg"
Set olMail = OpenMailFromFile(sFile)
End Sub
Private Function OpenMailFromFile(ByRef sFile As String) As
Outlook.MailItem
On Error Resume Next
Dim olApp As Outlook.Application
ShellExecute hwnd, "open", sFile, vbNullString, vbNullString,
NORMALFOCUS
Sleep 100
Set olApp = GetObject(, "Outlook.Application")
Set OpenMailFromFile = olApp.ActiveInspector.CurrentItem
End Function
</Beispiel>
Inzwischen habe ich eine weitere Lösung gefunden, ohne ShellExecute zu
verwenden. Mit Hilfe der Methode "CreateItemFromTemplate" kann mann die .msg
Datei direkt in einem MailItem Objekt laden. Danach ist es ein Kinderspiel,
auf die diversen Mail-Informationen (inkl. Attachments) zu zugreifen.
Gruss und trotzdem vielen Dank
Thierry
"Michael Bauer" <mi...@t-online.de> wrote in message
news:OkwZFa1Q...@TK2MSFTNGP09.phx.gbl...
> "CreateItemFromTemplate
manchmal sind die Lösungen doch wirklich zu einfach; darauf wäre ich gar
nicht gekommen :-)