การบรรยายเชิงปฏิบัติ WSH --- การบรรยายที่ 3 การสร้างอีเมล
ผู้เขียน:Eve Cole
เวลาอัปเดต:2009-05-30 19:53:45
เมื่อสร้างกล่องจดหมาย สถานการณ์จะซับซ้อนเนื่องจากคุณอาจใช้เซิร์ฟเวอร์อีเมลอื่น บางตัวใส่ข้อมูลอีเมลในไฟล์ข้อความ บางตัวใส่ข้อมูลในรีจิสทรี และบางตัวมีอินเทอร์เฟซ ADSI ดังนั้นจึงขึ้นอยู่กับสถานการณ์เฉพาะ
สำหรับข้อมูลอีเมลของผู้ใช้ในไฟล์ข้อความ คุณสามารถใช้งานไฟล์ข้อความได้โดยตรง ต่อไปนี้เป็นตัวอย่างโค้ดสำหรับการเขียนไฟล์ข้อความ:
ฉ
ว้าว
ตั้งค่า fs = WScript.CreateObject("Scripting.FileSystemObject")
ตั้งค่า fw = fs.CreateTextFile("c:users.dat")
fw.WriteLine "user1,[email protected],,,"
สำหรับข้อมูลผู้ใช้ที่อยู่ในรีจิสทรี คุณสามารถใช้ WSH เพื่อดำเนินการรีจิสทรีโดยตรงเพื่อสร้างกล่องจดหมายให้เสร็จสมบูรณ์ ตัวอย่างเช่น ข้อมูลผู้ใช้ของ IMAIL จะถูกวางไว้ในรีจิสทรี
ภายใต้ HKEY_localmacineSoftWareIPswitchdomain สิ่งเดียวที่ยุ่งยากเกี่ยวกับรหัสผ่านเริ่มต้นของกล่องจดหมายคือเราไม่ทราบอัลกอริธึมการเข้ารหัส ดังนั้นเราจึงสามารถสร้างกล่องจดหมายได้ด้วยตนเองก่อน จากนั้นใช้รหัสผ่านคงที่เพื่อดูว่าคืออะไรหลังจากเข้ารหัสแล้ว สคริปต์ของเราจะใช้เมื่อสร้างกล่องจดหมายอื่นด้วย ปัญหาคือเราต้องบอกผู้ใช้ว่าต้องเปลี่ยนรหัสผ่านในอนาคต ไม่เช่นนั้นจะไม่ปลอดภัย
Exchange Server มีอินเทอร์เฟซ ADSI ซึ่งทำให้สะดวกในการสร้างกล่องจดหมาย และกล่องจดหมายของเขาสามารถซิงโครไนซ์กับผู้ใช้โดเมน NT ได้ นี่คือโค้ดตัวอย่าง:
objContainer = GetObject("LDAP://SERVERNAME/o=OrgName/ou=SiteName/cn=ผู้รับ")
objUser = objContainer.Create("ที่อยู่ระยะไกล", "cn=CustRecip")
objUser.cn = "CustRecip"
objUser.Put "ที่อยู่เป้าหมาย", "SMTP:[email protected]"
objUser.Put "การเข้ารหัสอินเทอร์เน็ต", 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 "ความไวในการจำลองแบบ", 20
objUser.Put "ผู้รับ MAPI" เท็จ
objUser.SetInfo
WScript.Echo objUser.cn
สำหรับ i = 1ToobjUser.PropertyCount
ตั้งค่า vProp = objUser.Next
WScript.Echo vProp.ชื่อ
ต่อไป
หมายเหตุ: เนื่องจากฉันไม่มี Exchange Server สำหรับการทดลองในตอนนี้ โค้ดด้านบนจึงยังไม่ได้รับการทดสอบ หากคุณมีคำถามใดๆ โปรดไปที่แหล่งที่มาดั้งเดิมเพื่อดูวิธีแก้ไข
สคริปต์นี้ซึ่งมีการแก้ไขเล็กน้อยสามารถใช้ใน ASP ได้เช่นกัน