1. Gunakan perangkat lunak pengiriman yang disediakan oleh outLook, seperti perangkat lunak UFIDA Manufaktur U8 (versi demo) yang pernah saya lihat, di mana fungsi email dikirim dengan memanggil komponen ActiveX dari outLook komponen Outlook, layanan email SMTP
untuk mengirim email. Kodenya adalah sebagai berikut:
Private Sub Send().
RedupkanObj Sebagai Outlook.Application() Baru
Redupkan Item Sebagai Outlook.MailItemClass
Barang = keluarObj.CreateItem(0)
Barang.Ke = "
[email protected] "
Item.Subjek = "halo"
Item.Body = "neraka"
Item.Lampiran.Tambahkan("C:abc.txt")
Barang.Kirim()
Akhir Sub
2. Pengembangan WEB, lihat System.Web.Mail di ASP.NET baik
Namespace System.Web.Mail berisi kelas yang memungkinkan Anda membuat dan mengirim pesan menggunakan komponen pesan CDOSYS (Collaboration Data Objects for Windows 2000). Pesan email dikirimkan melalui layanan email SMTP yang terpasang di Microsoft Windows 2000 atau melalui server SMTP apa pun. Kelas dalam namespace ini dapat digunakan di ASP.NET atau aplikasi terkelola apa pun
MailAttachment menyediakan properti dan metode untuk membuat lampiran email.
MailMessage menyediakan properti dan metode untuk membuat pesan email.
SmtpMail menyediakan properti dan metode untuk mengirim pesan menggunakan komponen pesan Collaboration Data Objects (CDOSYS) pada Windows 2000.
Email dapat dikirim melalui layanan email SMTP yang terpasang di Microsoft Windows 2000 atau melalui server SMTP apa pun. Jenis namespace System.Web.Mail dapat digunakan di ASP.NET atau aplikasi terkelola apa pun.
Pengaturan server smtp. Sekarang beberapa penyedia email gratis tidak lagi menyediakan layanan Smtp untuk semua email. Saat mengirim email, informasi pengguna perlu diverifikasi. Pertimbangkan masalah verifikasi pengguna Smtp menjadi sangat cepat., pada dasarnya jangan khawatir. Jika ini bukan server lokal, sebaiknya jangan terlalu banyak menggunakannya saat mengirim. Salah satunya adalah masalah kecepatan, dan yang lainnya adalah mengirim terlalu banyak email menganggapnya spam dan kode penolakan layanannya adalah sebagai berikut:
Sub Pribadi Button1_Click(Pengirim ByVal Sebagai System.Object, ByVal dan Sebagai System.EventArgs) Menangani Button1.Click
Redupkan mailObj Sebagai MailMessage Baru()
Redupkan smtp Sebagai SmtpMail
'Tentukan nama server SMTP
smtp.SmtpServer = "smtp.XXX.com"
'Tentukan alamat pengiriman email
mailObj.Dari = "
[email protected] "
'Tentukan alamat penerima email
mailObj.To = "
[email protected] "
'Tentukan alamat BCC email
mailObj.Bcc= "
[email protected] "
'Tentukan alamat salinan karbon email
mailObj.Cc = "
[email protected] "
'Tentukan subjek email
mailObj.Subjek = "Subjek"
'Tentukan isi email
mailObj.Body = "Badan email!"
'Email dikirim dalam format HTML
mailObj.BodyFormat = MailFormat.Html
'Tentukan tingkat terbatas surat, atur ke tinggi di sini
mailObj.Priority = MailPriority.Tinggi
'Lampirkan lampiran ke email yang dikirim
mailObj.Attachments.Add(New MailAttachment("c:aa.doc"))
smTp.Kirim(mailObj)
Sub Akhir
3. Gunakan System.Net.Sockets dalam mengembangkan aplikasi Windows di VB.NET atau C#
Hal ini juga didasarkan pada protokol SMTP 1. Pengenalan protokol SMTP
1. Klien membuat koneksi TCP/IP ke server melalui port 25 server: 220 server.com Layanan Transfer Surat Sederhana Siap
2. Klien menggunakan perintah "HELO" untuk mengidentifikasi klien pengirim: HELO server.com
Sisi server: 250 server.com
3. Klien mengirimkan perintah MAIL, dan server merespons dengan OK untuk menunjukkan bahwa klien siap menerima: MAIL FROM: <
[email protected] >
Sisi server: 250 Oke
4. Klien mengirimkan perintah RCPT untuk mengidentifikasi penerima, dan server merespons apakah bersedia menerima klien email untuk penerima: RCPT TO: <
[email protected] >
Sisi server: 250 Oke
5. Setelah negosiasi selesai, gunakan perintah DATA untuk mengirim klien email: DATA
Sisi server: 354 Mulai input email: diakhiri dengan <CRLF>.<CRLF>
6. Klien mengakhiri konten masukan dengan . dan mengirimkannya ke klien: Subjek: <CRLF>
Konten<CRLF>
.<CRLF>
7. Klien keluar menggunakan perintah QUIT.
Klien: BERHENTI
Sisi server: 250 server.com menutup saluran transmisi
Keuntungan: Anda dapat mengembangkan komponen Anda sendiri atas dasar ini. Dengan menggunakan Sockets, kita dapat mengembangkan pemrograman jaringan. Kekurangan: Jumlah
program yang relatif besar Kode untuk mengirim email adalah sebagai berikut:
Redupkan sendData Sebagai String
Redupkan szData Sebagai Byte()
Redupkan CRLF Sebagai String
CRLF = "rn"
'Buat koneksi ke port server 25
Redupkan SmtpServ Sebagai TcpClient Baru (txtsmtp.Text, 25)
lstlog.Items.Clear()
'Menampilkan informasi awal server
Redupkan NetStrm Sebagai NetworkStream
NetStrm = SmtpServ.GetStream()
Redupkan RdStrm Sebagai StreamReader Baru(SmtpServ.GetStream())
Jika RdStrm.ReadLine() <> "" Lalu lstlog.Items.Add(RdStrm.ReadLine())
'
sendData = "Server HELO" + CRLF
szData = Sistem.Teks.Encoding.ASCII.GetBytes(sendData.ToCharArray())
NetStrm.Write(szData, 0, szData.Panjang)
lstlog.Items.Add(RdStrm.ReadLine())
'Tandai pengirim
sendData = "MAIL DARI: " + "<" + txtfrom.Teks + ">" + CRLF
szData = Sistem.Teks.Encoding.ASCII.GetBytes(sendData.ToCharArray())
NetStrm.Write(szData, 0, szData.Panjang)
lstlog.Items.Add(RdStrm.ReadLine())
'Tandai penerima
sendData = "RCPT KE: " + "<" + txtTo.Teks + ">" + CRLF
szData = Sistem.Teks.Encoding.ASCII.GetBytes(sendData.ToCharArray())
NetStrm.Write(szData, 0, szData.Panjang)
lstlog.Items.Add(RdStrm.ReadLine())
'Bersiap untuk mengirim konten
sendData = "DATA " + CRLF
szData = Sistem.Teks.Encoding.ASCII.GetBytes(sendData.ToCharArray())
NetStrm.Write(szData, 0, szData.Panjang)
lstlog.Items.Add(RdStrm.ReadLine())
'Kirim topik
sendData = "SUBJEK: " + txtsub.Teks + CRLF
'Kirim konten
sendData = sendData + txtmsg.Text + CRLF
'Akhiri pengiriman
kirimData = kirimData + "." + CRLF
szData = Sistem.Teks.Encoding.ASCII.GetBytes(sendData.ToCharArray())
NetStrm.Write(szData, 0, szData.Panjang)
lstlog.Items.Add(RdStrm.ReadLine())
'Keluar
sendData = "BERHENTI" + CRLF
szData = Sistem.Teks.Encoding.ASCII.GetBytes(sendData.ToCharArray())
NetStrm.Write(szData, 0, szData.Panjang)
lstlog.Items.Add(RdStrm.ReadLine())
'Tutup koneksi
NetStrm.Tutup()
RdStrm.Tutup()
lstlog.Items.Add("Koneksi ditutup")
lstlog.Items.Add("Berhasil terkirim")
Anda juga dapat merujuk ke: Menggunakan C# untuk membuat komponen pengiriman email (SMTP)
http://www.aspcool.com/lanmu/browse1.asp?ID=968&bbsuser=csharp 4. CDONTS, komponen pengiriman dasar yang disertakan dengan IIS SMTP
Anda tidak perlu mendownloadnya secara khusus. Microsoft telah menyediakan komponen ini selama 2000 diinstal, SMTP NT akan memilikinya.
Keuntungan: Komponen disediakan oleh sistem operasi. Kekurangan: Fungsionalitas buruk dan skalabilitas buruk
.
Mymail.From = *** 'Kotak surat pengirim surat
Mymail.To = *** 'Kotak surat penerima surat
Mymail.CC = *** 'Cc
Mymail.BCC = *** 'Ikat kirim
Mymail.Subject = *** 'Subjek surat
Mymail.Body = *** 'Badan surat
'Tetapkan prioritasnya, 0-tidak penting, 1-umum, 2-penting.
Mymail.Pentingnya = 2
Email Saya.Kirim()
Mymail = Tidak Ada
5. Gunakan komponen JMail
Jmail memiliki ciri-ciri sebagai berikut:
(1) Lampiran dapat dikirim;
(2) Kemampuan log terperinci memungkinkan Anda memeriksa masalahnya;
(3) Tetapkan prioritas pengiriman email;
(4) Mendukung pengiriman email dalam berbagai format, seperti mengirim email dalam HTML atau TXT. Ini adalah komponen gratis.
(5) Kemampuan untuk mengirim email buta/(CC) salinan karbon/surat mendesak;
(6) Yang paling penting adalah - komponennya gratis dan Anda tidak perlu membayarnya, sehingga sangat layak untuk digunakan.
Situs web:
http://www.dimac.net/ , versi saat ini adalah 4.3.
Atribut umum komponen JMail:
Badan Badan email
Panggilan logging Perekaman log untuk penggunaan Debug
Prioritas Prioritas email, dari 1 sampai 5
Pengirim pengirim
ServerAddress Alamat IP atau nama server SMTP
Metode umum
komponen JMail judul email subjek
:
AddAttachment menentukan file lampiran
AddRecipient menambahkan penerima
Salinan AddRecipientBCC Tersembunyi, hanya diketahui oleh pengirim dan penerima BCC.
Tambahkan PenerimaCC CC
Setelah Execute mengirimkan email
dan memahami atribut dan metode yang diperlukan, bagian sisanya menerima email yang dimasukkan oleh pengguna dan meneruskannya sebagai parameter ke metode AddRecipient, kemudian mengisi atribut yang tersisa sesuai kebutuhan, dan terakhir mengirimkannya dengan Execute metode. Misalnya:
Redupkan JMail
JMail = Server.CreateObject("JMail.SMTPMail")
JMail.Logging = Benar
JMail.ServerAddress = "202.96.144.48"
JMail.Sender = "
[email protected] "
JMail.Subjek = "subjek."
JMail.Body = "tubuh."
JMail.AddRecipient("
[email protected] ")
JMail.TambahkanLampiran("c:go.gif")
JMail.Prioritas = 3
JMail.Jalankan()
JMail = Tidak ada
ringkasan: Solusi mana yang harus dipilih bergantung pada tujuan dan kebutuhan program. Artikel ini memberikan beberapa contoh untuk referensi Anda. Misalnya, perangkat lunak UFIDA U8 memanggil komponen Outlook dan mengintegrasikannya ke dalam perangkat lunaknya sendiri. Sistem manajemen yang saya tulis, saya menulis komponen saya sendiri (SMTP), sama kuatnya, tetapi waktu pengkodeannya lebih lama!