EventSink - Disklaimer - VBS

21/11/2007 - 10:35 von Steffen Meyer | Report spam
Hallo zusammen,

ich bin mir nicht sicher, ob ich hier in der richtigen Newsgroup bin, aber
ich versuchs einfach mal.

Ich habe EventSink. mit dem ich eine VBS-Datei aufrufe, die an jede
ausgehende Mail eine Signatur anhàngt, soweit funktioniert das auch.
Nun möchte ich aber diese Signatur nicht mehr als einmal in dieser Mail
haben, deshalb versuche ich schon die ganze Zeit, die Signatur entweder aus
der Mail wieder zu löschen, und ganz unten eine neue zu erstellen, oder
keine neu hinzuzufügen.
Leider wird die Signatur entweder komplett weg gelassen, oder sie wird ein
zweites Mal an die Mail angehàngt.
Ich fànde es prima, wenn mir mal jemand sagen könnte, was ich falsch mache.

Mein Quelltext der VBS-Datei ist wie folgt:

<SCRIPT LANGUAGE="VBScript">
Sub ISMTPOnArrival_OnArrival(ByVal Msg, EventStatus)
TextDisclaimer = "___________________________" & vbCrLf & _
vbCrLf & "Firma" & _
vbCrLf & "Strasse 1" & _
vbCrLf & "00000 Musterstadt, Germany" & _
vbCrLf & "Phone +00 (0)0000 - 0000 - 0" & _
vbCrLf & "Fax +00 (0)0000 - 0000 - 10" & _
vbCrLf & "E-Mail mailto:mail@mail.de" & _
vbCrLf & "Internet www.test.de" & _
vbCrLf & _
vbCrLf & "Geschàftsführender Gesellschafter" & _
vbCrLf & "General Director" & _
vbCrLf & "Herr" & _
vbCrLf & _
vbCrLf & "USt-Id.Nr. / VAT ID DE00000000" & _
vbCrLf & "Amtsgericht Test" & _
vbCrLf & "HRB0000000" & _
vbCrLf & "___________________________"

HTMLDisclaimer = "<div class=&quot;Firma&quot;><FONT face=Verdana
size=1>_________________________________<br><br></FONT><table border=0
cellspacing=0 cellpadding=0><tr><td><FONT face=Verdana
size=1><b>Firma</b></font></td></tr><tr><td><FONT face=Verdana
size=1>Strasse 1</FONT></td></tr><tr><td><FONT face=Verdana size=1>00000
Musterstadt, Germany</FONT></td></tr></table><table border=0 cellspacing=0
cellpadding=0><tr><td><FONT face=Verdana size=1>Phone</FONT></td><td><FONT
face=Verdana size=1>+00 (0)0000 - 0000 - 0</FONT></td></tr><tr><td><FONT
face=Verdana size=1>Fax</FONT></td><td><FONT face=Verdana size=1>+00
(0)0000 - 0000 - 10</FONT></td></tr><tr><td><FONT face=Verdana
size=1>E-Mail</FONT></td><td><FONT face=Verdana size=1><a
href=&quot;mailto:mail@mail.de&quot;>mail@mail.de</a></FONT></td></tr><tr><td><FONT
face=Verdana size=1>Internet&nbsp;&nbsp;</FONT></td><td><FONT face=Verdana
size=1><A
HREF=&quot;http://www.test.de/&quot;>ww...;<table
border=0 cellspacing=0 cellpadding=0><tr><td><FONT face=Verdana
size=1>Gesch&auml;ftsf&uuml;hrender
Gesellschafter</FONT></td></tr><tr><td><FONT face=Verdana size=1>General
Manager</FONT></td></tr><tr><td><FONT face=Verdana
size=1>Herr</FONT></td></tr></table><br><table border=0 cellspacing=0
cellpadding=0><tr><td><FONT face=Verdana size=1>Ust-Id. Nr. / VAT ID
DE000000000</FONT></td></tr><tr><td><FONT face=Verdana size=1>Amtsgericht
Test</FONT></td></tr><tr><td><FONT face=Verdana
size=1>HRB000000</FONT></td></tr></table><FONT face=Verdana
size=1>_________________________________</FONT></div>"

If Msg.HTMLBody <> "" Then

'Suchen ob Disclaimer schon vorhanden
pos = InStr(1, Msg.HTMLBody, HTMLDisclaimer, vbTextCompare)

If pos <> 0 Then
'pos = InStr(1, Msg.HTMLBody, HTMLDisclaimer, vbTextCompare)
szPartI = Left(Msg.HTMLBody, pos - 1) 'Speichert den Teil vor der
Position von 'pos' in szPartI
szPartII = Right(Msg.HTMLBody, Len(Msg.HTMLBody) -
(Len(HTMLDisclaimer) + (pos - 1)))
Msg.HTMLBody = szPartI + szPartII
End If

'Search for the "</body>" tag and insert our discliamer before that
tag.
pos = InStr(1, Msg.HTMLBody, "</body>", vbTextCompare)
szPartI = Left(Msg.HTMLBody, pos - 1)
szPartII = Right(Msg.HTMLBody, Len(Msg.HTMLBody) - (pos - 1))
Msg.HTMLBody = szPartI + HTMLDisclaimer + szPartII
End If

If Msg.TextBody <> "" Then
Msg.TextBody = Msg.TextBody & vbCrLf & TextDisclaimer & vbCrLf
End If

'Commit the content changes to the transport ADO Stream object.
Msg.DataSource.Save ' Commit the changes into the transport Stream

EventStatus = cdoRunNextSink
End Sub
</SCRIPT>


Danke schon mal für eure Hilfe - mir ist übrigens bewußt, dass ich nur Text
Mails noch nicht abfrage.

Gruß
Steffen
 

Lesen sie die antworten

#1 Frank Carius [MVP]
26/11/2007 - 10:03 | Warnen spam
Steffen Meyer wrote:

Nun möchte ich aber diese Signatur nicht mehr als einmal in dieser
Mail haben, deshalb versuche ich schon die ganze Zeit, die Signatur
entweder aus der Mail wieder zu löschen, und ganz unten eine neue zu
erstellen, oder keine neu hinzuzufügen.

'Suchen ob Disclaimer schon vorhanden
pos = InStr(1, Msg.HTMLBody, HTMLDisclaimer, vbTextCompare)

If pos <> 0 Then



Die Suche muss fehlt schlagen, da es jederzeit möglich ist,m dass ein MTA
oder was anderes die Mail umbricht oder anders formatiert.
Auch bei HTML (/und erst recht da) Ich denke der Code findet daher den
Disclaimer nicht zuverlàssig.
Die Gtenzren eines VB Disclaimmers sind die ja auch bekannt.
Ich würde heute sowas nicht selbst schreiben wollen (auch wenn gerade auf
meiner mSXFAQ eben auch so ein Code als "muster" steht)
ich würde immer eines der kommerziellen Produkte nehmen.



Frank Carius MS Exchange MVP
Exchange FAQ auf http://www.msxfaq.de
Support siehe http://www.netatwork.de/msxfaq.htm
Bitte "Realnamen" verwenden oder müssen Sie sich verstecken ?
Dringendes Problem: eine Telefonnummer kann ich anrufen,wenn Zeit ist
:-) --

Ähnliche fragen