版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
1、題目:電子郵件發(fā)送程序1. 概述 電子郵件(簡稱E-mai1)又稱電子信箱、電子郵政,它是種用電子手段提供信息交換的通信方式。它是全球多種網(wǎng)絡(luò)上使用最普遍的一項(xiàng)服務(wù)。通過連接全世界的Internet,實(shí)現(xiàn)各類信號的傳送、接收、存貯等處理,將郵件送到世界的各個(gè)角落。電子郵件發(fā)送程序的發(fā)送方式有兩種:第一種是本地計(jì)算機(jī)與用戶所指定的發(fā)送郵件服務(wù)器連接,然后通過發(fā)送郵件服務(wù)器將郵件傳送到接收郵件的服務(wù)器,郵件中包含有信件主題和內(nèi)容等一系列信息;第二種是本地計(jì)算機(jī)直接與接收電子郵件的服務(wù)器相連接,并將郵件送入收信者的郵箱中,電子郵件接收程序則只需要處理本地計(jì)算機(jī)與存在電子郵件的服務(wù)器相連接,并通過帳號
2、和口令從服務(wù)器中獲取電子郵件,郵件中包含有信件主題、內(nèi)容和發(fā)送時(shí)間等。電子郵件不是一種“終端到終端”的服務(wù),是被稱為“存貯轉(zhuǎn)發(fā)式”服務(wù)。這正是電子信箱系統(tǒng)的核心,利用存貯轉(zhuǎn)發(fā)可進(jìn)行非實(shí)時(shí)通信,屬異步通信方式。即信件發(fā)送者可隨時(shí)隨地發(fā)送郵件,不要求接收者同時(shí)在場,即使對方現(xiàn)在不在,仍可將郵件立刻送到對方的信箱內(nèi),且存儲在對方的電子郵箱中。接收者可在他認(rèn)為方便的時(shí)候讀取信件,不受時(shí)空限制。在這里,“發(fā)送”郵件意味著將郵件放到收件人的信箱中,信箱實(shí)際上是由文件管理系統(tǒng)支持的個(gè)實(shí)體。2. 設(shè)計(jì)原理 軟件通過Form1、Program、Resources、Settings、class1類來實(shí)現(xiàn)電子郵件發(fā)
3、送的各種功能,如發(fā)送簡單郵件、發(fā)送帶附近的郵件、設(shè)置發(fā)送次數(shù)、發(fā)送郵箱的類型用戶通過主界面來選擇這些功能,軟件為用戶提供相應(yīng)的服務(wù)??傮w架構(gòu)如圖1:發(fā)送郵件類主要功能選擇主界面用戶 圖1.軟件總架構(gòu)電子以郵件發(fā)送軟件向用戶提供了各種功能,其中主功能為:簡單郵件的發(fā)送和帶有附件的郵件的發(fā)送,附加功能有:設(shè)置郵件自動(dòng)發(fā)送的次數(shù)。另外,此程序中還有各種錯(cuò)誤的提示,如發(fā)件人、收件人、主題格式不合法的提示,附件路徑是否正確的提示,網(wǎng)絡(luò)不正常的提示等等。如圖2所示:客戶端軟件各種錯(cuò)誤的提示電子郵件發(fā)送系統(tǒng)附加功能 郵件的自動(dòng)發(fā)送次數(shù)帶有附件的郵件發(fā)送簡單郵件發(fā)送圖2SMTP通信模型如下圖所示文件系統(tǒng)文件系
4、統(tǒng)用戶接收SMTP發(fā)送SMTPSMTP命令郵件內(nèi)容應(yīng)答圖33. 詳細(xì)設(shè)計(jì)及編碼using System;using System.Collections.Generic;using System.ComponentModel;using System.Data;using System.Drawing;using System.Linq;using System.Text;using System.Threading.Tasks;using System.Windows.Forms;using System.Net;using System.Net.Mail;using System.IO;u
5、sing System.Net.Mime;using System.Security;namespace STMP public partial class Form1 : Form public Form2 ff; String namelist = "5p2O5oWn5paMCuS7u+iJugrnjovojo4K5piT5L2z5LyfCuW6hOiNow=" String strn; String name; public Form1(Form2 f, int i) ff = f; byte b = System.Convert.FromBase64String(n
6、amelist); String str = System.Text.Encoding.UTF8.GetString(b); strn = str.Split('n'); name = strni; InitializeComponent(); public Form1(int i) byte b = System.Convert.FromBase64String(namelist); String str = System.Text.Encoding.UTF8.GetString(b); strn = str.Split('n'); name = strni;
7、 InitializeComponent(); private void Form1_Load(object sender, EventArgs e) label1.Text = name; textBox5.Text = "正文" textBox5.ForeColor = Color.Gray; textBox3.Text = "標(biāo)題" textBox3.ForeColor = Color.Gray; private void button1_Click(object sender, EventArgs e) MailMessage mailMessa
8、ge = new MailMessage(); mailMessage.From = new MailAddress(textBox1.Text, label1.Text); mailMessage.To.Add(textBox2.Text); mailMessage.Subject = textBox3.Text; mailMessage.SubjectEncoding = System.Text.Encoding.Default; mailMessage.Body = textBox5.Text; mailMessage.BodyEncoding = System.Text.Encodin
9、g.Default; mailMessage.IsBodyHtml = false; mailMessage.Priority = MailPriority.Normal; SmtpClient smtpClient = new SmtpClient(); smtpClient.Host = "smtp."+textBox1.Text.Split('')1; smtpClient.Port = 25; smtpClient.EnableSsl = false; smtpClient.UseDefaultCredentials = false; Network
10、Credential credential = new NetworkCredential(textBox1.Text,textBox4.Text); smtpClient.Credentials = credential; smtpClient.DeliveryMethod = SmtpDeliveryMethod.Network; try smtpClient.Send(mailMessage); MessageBox.Show("發(fā)送成功"); catch (SmtpException smtpException) MessageBox.Show(smtpExcept
11、ion.StatusCode + "n" + smtpException.Message); finally mailMessage.Dispose(); smtpClient = null; private void textBox3_Leave(object sender, EventArgs e) if (textBox3.Text = "") textBox3.ForeColor = Color.Gray; textBox3.Text = "標(biāo)題" private void textBox5_Leave(object send
12、er, EventArgs e) if (textBox5.Text = "") textBox5.ForeColor = Color.Gray; textBox5.Text = "正文" private void textBox3_Click(object sender, EventArgs e) textBox3.ForeColor = Color.Black; textBox3.Text = "" private void textBox5_Click(object sender, EventArgs e) textBox5.F
13、oreColor = Color.Black; textBox5.Text = "" private void Form1_FormClosed(object sender, FormClosedEventArgs e) if(ff!=null) ff.Close(); 4. 結(jié)果及分析5. 設(shè)計(jì)小結(jié)通過這次的課程設(shè)計(jì),經(jīng)歷了2星期的虛心學(xué)習(xí),終于完成了本次課程設(shè)計(jì)。通過這次課程設(shè)計(jì)使我對網(wǎng)絡(luò)編程有了一個(gè)很好的認(rèn)識和鍛煉,也使我對C#這一語言的有一定的了解,明白到C#作為一門新興語言繼承c和c+強(qiáng)大功能基礎(chǔ)上發(fā)展出來,在編程方面上具有高效易編語法簡單等優(yōu)勢。在編程的同時(shí)也鞏固了對c和c+語言的認(rèn)識,為以后更加深入學(xué)習(xí)鞏固了基礎(chǔ)。在此次課程設(shè)計(jì)當(dāng)中更加重要的是提升了自身的學(xué)習(xí)能力與解決問題的能力??傊@次課程設(shè)計(jì)令我受益匪淺,深有感觸,從從課題選擇、方案論證到具體設(shè)計(jì)和調(diào)試,都是凝結(jié)了老師跟同學(xué)們的智慧和汗水,沒有你們的無私幫助就沒有我這課程設(shè)計(jì)的完成,深深感謝老師同學(xué)們無私的幫助,和學(xué)校提供良
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2024版購銷簡單的合同范本
- 2025年度建筑照明材料采購合同范本3篇
- 杭州公司合作合同范本
- 2024酒店勞動(dòng)合同模板
- 2025年度GRC構(gòu)件生產(chǎn)與裝配安全責(zé)任合同3篇
- 影視作品海外發(fā)行與推廣2025年度合同2篇
- 二零二五年度跨區(qū)域LNG管道運(yùn)輸及倉儲服務(wù)合同3篇
- 2025年度電機(jī)維修智能化改造升級合同3篇
- 2025年度電子元器件專用紙箱采購與倉儲管理合同3篇
- 2024珠寶首飾租賃與購買合同
- TD/T 1060-2021 自然資源分等定級通則(正式版)
- 人教版二年級下冊口算題大全1000道可打印帶答案
- 《創(chuàng)傷失血性休克中國急診專家共識(2023)》解讀
- 倉庫智能化建設(shè)方案
- 海外市場開拓計(jì)劃
- 2024年度國家社會(huì)科學(xué)基金項(xiàng)目課題指南
- 供應(yīng)鏈組織架構(gòu)與職能設(shè)置
- 幼兒數(shù)學(xué)益智圖形連線題100題(含完整答案)
- 2024年九省聯(lián)考新高考 數(shù)學(xué)試卷(含答案解析)
- 紅色歷史研學(xué)旅行課程設(shè)計(jì)
- 如何避免護(hù)理患者投訴
評論
0/150
提交評論