WSH-Praxisvorlesung ---Vorlesung 3 Erstellen einer E-Mail
Autor:Eve Cole
Aktualisierungszeit:2009-05-30 19:53:45
Beim Erstellen von Postfächern ist die Situation kompliziert, da Sie möglicherweise unterschiedliche E-Mail-Server verwenden. Einige legen die E-Mail-Informationen in Textdateien ab, andere speichern die Informationen in der Registrierung und einige stellen ADSI-Schnittstellen bereit, sodass es von der jeweiligen Situation abhängt.
Für Benutzer-E-Mail-Informationen in einer Textdatei können Sie die Textdatei direkt bedienen. Das Folgende ist ein Codebeispiel zum Schreiben einer Textdatei:
F
wxya
Setze fs = WScript.CreateObject("Scripting.FileSystemObject")
Setze fw = fs.CreateTextFile("c:users.dat")
fw.WriteLine „user1,[email protected],,,“
Für in der Registrierung abgelegte Benutzerinformationen können Sie WSH verwenden, um die Registrierung direkt zu bedienen und die Erstellung des Postfachs abzuschließen. Beispielsweise werden die Benutzerinformationen von IMAIL in der Registrierung abgelegt.
Unter HKEY_localmacineSoftWareIPswitchdomain. Das einzig Ärgerliche am Anfangspasswort des Postfachs ist, dass wir seinen Verschlüsselungsalgorithmus nicht kennen. Daher können wir ein Postfach zunächst nur manuell erstellen und dann nach der Verschlüsselung ein festes Passwort verwenden, um zu sehen, was es ist. Unser Skript verwendet es auch beim Erstellen anderer Postfächer. Das Problem ist, dass wir den Benutzern sagen müssen, dass sie ihre Passwörter in Zukunft ändern müssen, sonst ist es unsicher.
Exchange Server bietet eine ADSI-Schnittstelle, die das Erstellen von Postfächern erleichtert. Und sein Postfach kann mit NT-Domänenbenutzern synchronisiert werden. Hier ist ein Beispielcode:
objContainer = GetObject("LDAP://SERVERNAME/o=OrgName/ou=SiteName/cn=Recipients")
objUser = objContainer.Create("Remote-Address", "cn=CustRecip")
objUser.cn = "CustRecip"
objUser.Put „Target-Address“, „SMTP:[email protected]“
objUser.Put "Internet-Encoding", 1310720objUser.UID = "CustRecip"
objUser.textEncodedORaddress = "c=US;a= ;p=DOIT;o=CDO;s=CustRecip;"
objUser.Mail = "[email protected]"
objUser.Put „otherMailbox“, „MS:OrgName/SiteName/CustRecip“
objUser.Put „Replikationsempfindlichkeit“, 20
objUser.Put „MAPI-Recipient“, False
objUser.SetInfo
WScript.Echo objUser.cn
Für i = 1ToobjUser.PropertyCount
Setzen Sie vProp = objUser.Next
WScript.Echo vProp.Name
Nächste
Hinweis: Da ich derzeit keinen Exchange Server für Experimente habe, wurde der obige Code nicht getestet. Wenn Sie Fragen haben, wenden Sie sich bitte an die Originalquelle, um Lösungen zu finden.
Dieses Skript kann mit geringfügigen Modifikationen auch in ASP verwendet werden.