saihttam
Goto Top

emails per vbs von exchange server abrufen

Hallo Leute,

zur Messung von Laufzeiten möchte ich von einem Client e-mail senden und empfangen,
einen Timestamp im Subject setzten und mit Hilfe der Empfangzeit die Laufzeit ermitteln.

Eine weitere Anforderung ist die Verwendung verschiedener Outlook-Profile bei
geschlossenem Outlook.

Ist das eventuell mit vbs möglich?

Vielen Dank für Eure Tipps.

Saihttam

Content-Key: 80840

Url: https://administrator.de/contentid/80840

Printed on: April 24, 2024 at 02:04 o'clock

Member: stbewo
stbewo Feb 15, 2008 at 13:49:10 (UTC)
Goto Top
Hallo Saihttam,

versuche es mal hiermit.


Option Explicit

Const olMailItem = 0 ' Konstanten für neue Einträge
Const olAppointmentItem = 1
Const olContactItem = 2
Const olTaskItem = 3
Const olJournalItem = 4
Const olNoteItem = 5
Const olPostItem = 6

Const olCC = 2 ' Typ Empfänger
Const olByValue = 1 ' Typ Anhang
Const olByReference = 4

Const olImportanceHigh = 2 ' Mail-Priorität
Const olImportanceLow = 0
Const olImportanceNormal = 1

Dim objOutl, objNameSpace, objMailItem
Dim recipient, message, subject, myRecipient
Dim myAttachments

Dim BodyLen, AttachmentFile

' Definiere Eigenschaften der E-Mail
recipient = "Deine.Adresse@sca.com"
subject = "Test Mail gestartet um: " & time
message = "BlaBlaBla" & vbCrLf

' Erzeuge Outlook-Objektreferenz
Set objOutl = WScript.CreateObject("Outlook.Application")

' Objektreferenz auf "Mapi"-Namespace holen
Set objNameSpace = objOutl.GetNameSpace("MAPI")

' Neuen Mail-Eintrag als Objekt erzeugen
Set objMailItem = objOutl.CreateItem(olMailItem)
objMailItem.Importance = olImportanceNormal ' Normale Priorität

' Mail-Objekt Eigenschaften setzen
objMailItem.Recipients.Add recipient ' E-Mail-Adresse
Set myRecipient = objMailItem.Recipients.Add ("Deine.Adresse@sca.com")
myRecipient.Type = olCC

' Andere Eigenschaften setzen
objMailItem.Subject = subject ' Betreff (subject)
objMailItem.Body = message ' Body-Text

' Anhang (Attachement) vorbereiten
AttachmentFile = "c:\daten\files.txt" ' Datei an ...
BodyLen = Len (objMailItem.Body) + 2 ' ... das Ende anhängen

Set myAttachments = objMailItem.Attachments
' olByReference wird im Internet-Modus nicht unterstützt
myAttachments.Add AttachmentFile, olByValue, BodyLen, "Nielsen Files FTP Server"

' Fertig zum "logon" an Outlook (nutze Logon-Methode)
'objNameSpace.Logon "profile", "password"

objMailItem.Send ' Senden

objNameSpace.Logoff ' Abmelden

WScript.Echo "E-Mail für '" & recipient & " und " & myRecipient & "' erzeugt" ' Fertigmeldung

WScript.Quit

Gruß
Stefan
Member: saihttam
saihttam Feb 18, 2008 at 15:04:07 (UTC)
Goto Top
Hallo Stefan,

vielen Dank für Deine Antwort, so komme ich erst einmal weiter

Eine Frage habe ich allergings noch:

Scheinbar hat die Zeile

objNameSpace.Logon "profile", "password"

keine Auswirkung auf das Profil. Ich habe lokal drei verschiedene Profile
angelegt, es wird immer je nach eingestellter Profiloption (zu verwendendes Profil
bestätigen bzw. immer dieses Profil verwenden) "gehandelt".

Entweder ich muß manuell das Profil auswählen oder es wird immer das Standardprofil
verwendet.

Hast Du da eventuell noch eine Idee ?

Gruß
Saihttam