ใช้ VB6 เพื่อเขียนโปรแกรมสำหรับการส่งอีเมล มีองค์ประกอบอีเมลที่หลากหลายให้เลือก เช่น MAPIMessages, CDONTS (NTSCollaborationDataObjects) ที่มาพร้อมกับ IIS4.0 และซอฟต์แวร์อีเมลที่พัฒนาโดยผู้ผลิตบุคคลที่สามหลายราย บทความนี้จะแนะนำวิธีใช้ CDONTS เพื่อพัฒนาโปรแกรมเมลภายใต้ VB
1. ยืนยันว่าติดตั้งเซิร์ฟเวอร์ SMTP แล้ว
ขั้นแรก คุณต้องยืนยันว่ามีการติดตั้งเซิร์ฟเวอร์ SMTP บนเซิร์ฟเวอร์ IIS นี่คือตัวเลือกที่ได้รับการติดตั้งตามค่าเริ่มต้นเมื่อติดตั้ง OptionPack หากติดตั้งเซิร์ฟเวอร์ SMTP แล้ว จะมีไฟล์ชื่อ cdonts.dll ในไดเร็กทอรี System32
2. โปรแกรมส่งอีเมลที่ง่ายที่สุด
ต่อไปนี้เป็นโปรแกรมส่งอีเมลที่ง่ายที่สุด ซึ่งจะส่งอีเมลชื่อ "หัวข้อ" และเนื้อหา "Hello" จาก [email protected] ไปที่ [email protected]:
PRivateSubcmdSendMail_Click()
DimobjmailasObject
SetobjMail=CreateObject("CDFONTS.DLL")
ObjMail.Send"[email protected]", "[email protected]", "หัวข้อ", "สวัสดี"
SetobjMail=ไม่มีอะไร
สิ้นสุดย่อย
3. ส่งไฟล์แนบอีเมล
หากมีไฟล์แนบที่ต้องส่งไปพร้อมกับอีเมล คุณสามารถใช้วิธี AttachFile ของ CDONTS ได้:
PrivateSubcmdSendMail_Click()
DimobjMailasObject
SetobjMail=CreateObject("CDFONTS.DLL")
ด้วยObjMail
.จาก = "[email protected]"
.ถึง="[email protected]"
.Subject="ชื่อเรื่อง"
.Body="สวัสดี"
.AttachFile"c:/document/sample.doc", "sample.doc"
.ส่ง
จบด้วย
SetobjMail=ไม่มีอะไร
สิ้นสุดย่อย
4.คุณสมบัติและวิธีการที่ใช้กันทั่วไปของส่วนประกอบ CDONTS
คุณสมบัติและวิธีการที่ใช้กันทั่วไปของส่วนประกอบ CDONTS มีดังต่อไปนี้:
คุณสมบัติ:
Version: ส่งกลับหมายเลขเวอร์ชันของส่วนประกอบ CDONTS
MailFormat: รูปแบบอีเมล 1 ประเภทข้อความปกติ 0-MIME
สำเนาถึง: ตั้งค่าที่อยู่อีเมลตั้งแต่หนึ่งรายการขึ้นไปเพื่อใช้อ้างอิง
จาก: ที่อยู่ของผู้ส่งอีเมล
ถึง: ที่อยู่ของผู้รับอีเมล
หัวเรื่อง: ชื่อเรื่อง
เนื้อความ: เนื้อหา
BodyFormat: รูปแบบเนื้อหา 1 ข้อความปกติ 0-ไฮเปอร์เท็กซ์
วิธี:
AttachFile: แนบไฟล์
AttachURL: แนบที่อยู่
ส่ง: ส่งอีเมล
5.ส่งอีเมลในรูปแบบไฮเปอร์เท็กซ์
คุณต้องเคยเห็นอีเมลจำนวนมากที่ใช้รูปแบบไฮเปอร์เท็กซ์ ซึ่งไม่เพียงแต่จะมีรูปภาพ เสียง แต่ยังฝังภาพเคลื่อนไหวด้วย หากคุณส่งอีเมลดังกล่าวให้เพื่อนของคุณ มันจะทำให้เขาหรือเธอประหลาดใจอย่างไม่คาดคิดอย่างแน่นอน เพราะนี่เป็นสิ่งที่ไม่สามารถทำได้ด้วยโปรแกรมส่งอีเมลทั่วไป ข้อมูลต่อไปนี้ใช้คอมโพเนนต์ CDONTS เพื่อส่งอีเมลในรูปแบบ HTML ซึ่งมีรูปภาพชื่อ example.gif โปรแกรมมีดังนี้:
PrivateSubcmdSendMail_Click()
DimobjMailasObject
SetobjMail=CreateObject("CDFONTS.DLL")
DimstrHTMLasString
StrHTML="〈html〉〈หัว〉"
StrHTML=StrHTML "〈title〉Email〈/title〉〈/head〉 โดยใช้รูปแบบไฮเปอร์เท็กซ์
StrHTML=StrHTML "〈body〉〈p〉〈strong〉ตัวอย่างการส่งอีเมลโดยใช้ CDONTS"
StrHTML=StrHTML "〈imgsrc=sample.gif〉〈/strong〉〈/p〉"
StrHTML=StrHTML "〈p〉ตัวอย่างข้างต้นได้ฝังภาพ example.gif〈/p〉"
StrHTML=StrHTML "〈/body〉〈/html〉"
ด้วยObjMail
.จาก = "[email protected]"
.ถึง="[email protected]"
.Subject="ชื่อเรื่อง"
.body=strHTML
.AttachURL"c:/mydata/sample.gif","sample.gif"
.รูปแบบร่างกาย=0
.รูปแบบอีเมล=0
.ส่ง
จบด้วย
SetobjMail=ไม่มีอะไร
สิ้นสุดย่อย
ณ จุดนี้ ฉันเชื่อว่าคุณต้องค้นพบข้อบกพร่องในการประมวลผลอีเมล SMTP แล้ว เซิร์ฟเวอร์ SMTP ได้รับข้อความเอาท์พุตของคุณ แต่ไม่ได้ตรวจสอบชื่อและที่อยู่ของผู้ส่ง ซึ่งถูกกำหนดโดยกลไกการส่งแบบอะซิงโครนัสของ SMTP แต่อาจมีบางคนใช้โดยมีจุดประสงค์แอบแฝงเพื่อแกล้งทำเป็นคนอื่นและส่งอีเมล! บทความนี้ขอแนะนำอย่างยิ่งว่าคุณอย่าลองทำง่ายๆ เมื่อ ISP ของคุณทราบเกี่ยวกับพฤติกรรมของคุณแล้ว บัญชีของคุณก็จะถูกลบทันที -