Durch den Einsatz des nachfolgenden Skripts im Agent des Exchange Server kann man die Attachment’s einer Email automatisch in einem lokalen Verzeichnis speichern.
Um ein überschreiben der Dateien zu vermeiden wird ein temporärer Dateiname gebildet.
Um das Skript ausführen zu können muss in jedem Fall ein Exchange Server betrieben werden.
Hier nun das Skript:
<SCRIPT language=VBScript RunAt="Server"> '------------------------------------------------------------------------------ 'FILE DESCRIPTION: Exchange Server Event Script '------------------------------------------------------------------------------ OptionExplicit '------------------------------------------------------------------------------ ' Global Variables '------------------------------------------------------------------------------ '------------------------------------------------------------------------------ ' Event Handlers '------------------------------------------------------------------------------ ' DESCRIPTION: This event is fired when a new message is added to the folder PublicSub Folder_OnMessageCreated Dim objSession Dim objItem Dim objAttachment dim i dim atName Set objSession = EventDetails.Session Set objItem = objSession.GetMessage(EventDetails.MessageID, Null) If objItem.Type ="IPM.Note"or objItem.Type ="IPM.Post"Then If objItem.Attachments.Count > 0 then for i = 1 to objItem.Attachments.Count Set objAttachment = objItem.Attachments.Item(i) atName ="C:\Attachment\Inbox\" & GetTempName("C:\Attachment\Inbox\") ifNot FileExist(atName) then objAttachment.WriteToFile(atName) else objAttachment.WriteToFile(atName & "neu") EndIf next endif EndIf Set objAttachment =nothing Set objSession =Nothing Set objItem =Nothing EndSub -------------------------------------------------------------------------------- ' DESCRIPTION: This event is fired when a message in the folder is changed PublicSub Message_OnChange EndSub -------------------------------------------------------------------------------- ' DESCRIPTION: This event is fired when a message is deleted from the folder PublicSub Folder_OnMessageDeleted EndSub -------------------------------------------------------------------------------- ' DESCRIPTION: This event is fired when the timer on the folder expires PublicSub Folder_OnTimer EndSub -------------------------------------------------------------------------------- Function FileExist(filespec) Dim fso, msg Dim bRet Set fso =CreateObject("Scripting.FileSystemObject") If (fso.FileExists(filespec)) Then bRet =true Else bRet =false EndIf FileExist = bRet EndFunction -------------------------------------------------------------------------------- Function GetTempName(path) Dim fso, fsp Dim bRet Set fso =CreateObject("Scripting.FileSystemObject") fsp = fso.GetTempName GetTempName = fsp EndFunction </SCRIPT>
Hallo,
wo binde ich das Skript ein und wie muss ich das Skript ändern, damit es meinem Server läuft und die Attachments beim Empfang und Versand von Nachrichten speichert.
Danke
Lukas
Hallo,
das Skript war für den Einsatz mit dem Exchange Server 2000 konzipiert und da musste man den Script Agent auf dem Server installiert haben.
Ich Habe bei aktuelleren Versionen des Exchange Server nicht mehr getestet wie das dort funktioniert.
Sorry
HP