网络程序设计报告Word格式.docx

上传人:b****2 文档编号:419230 上传时间:2023-04-28 格式:DOCX 页数:18 大小:598.30KB
下载 相关 举报
网络程序设计报告Word格式.docx_第1页
第1页 / 共18页
网络程序设计报告Word格式.docx_第2页
第2页 / 共18页
网络程序设计报告Word格式.docx_第3页
第3页 / 共18页
网络程序设计报告Word格式.docx_第4页
第4页 / 共18页
网络程序设计报告Word格式.docx_第5页
第5页 / 共18页
网络程序设计报告Word格式.docx_第6页
第6页 / 共18页
网络程序设计报告Word格式.docx_第7页
第7页 / 共18页
网络程序设计报告Word格式.docx_第8页
第8页 / 共18页
网络程序设计报告Word格式.docx_第9页
第9页 / 共18页
网络程序设计报告Word格式.docx_第10页
第10页 / 共18页
网络程序设计报告Word格式.docx_第11页
第11页 / 共18页
网络程序设计报告Word格式.docx_第12页
第12页 / 共18页
网络程序设计报告Word格式.docx_第13页
第13页 / 共18页
网络程序设计报告Word格式.docx_第14页
第14页 / 共18页
网络程序设计报告Word格式.docx_第15页
第15页 / 共18页
网络程序设计报告Word格式.docx_第16页
第16页 / 共18页
网络程序设计报告Word格式.docx_第17页
第17页 / 共18页
网络程序设计报告Word格式.docx_第18页
第18页 / 共18页
亲,该文档总共18页,全部预览完了,如果喜欢就下载吧!
下载资源
资源描述

网络程序设计报告Word格式.docx

《网络程序设计报告Word格式.docx》由会员分享,可在线阅读,更多相关《网络程序设计报告Word格式.docx(18页珍藏版)》请在冰点文库上搜索。

网络程序设计报告Word格式.docx

1.1.3.开发工具介绍3

1.2.详细设计3

1.2.1.Net的应用3

1.2.2.MailMessage类和SmtpClient类4

1.2.3.Graphics对象的应用4

1.2.4.UDP的应用5

1.3.注册功能的实现5

1.4.登陆功能的实现6

1.5.发送邮件功能的实现6

1.6.聊天室功能的实现7

1.7.查询系统时钟功能的实现8

2.运行测试9

2.1.程序测试9

2.2.存在的不足9

教师评分10

1.分析设计

本项目主要实现一个属于自己的网络地盘的管理,主要功能为管理有关邮件发送,留言信息和系统信息等。

可见,本系统并不复杂,主要解决的问题是对数据库进行操作。

1.1.概要设计

1.1.1功能概述

系统的基本功能模块主要分以下几个:

模块编号

名称

功能

1

用户登录模块

对用户信息进行验证。

2

发送邮件模块

根据pop3的格式进行邮件的发送。

3

聊天室模块

进入广域网的聊天室。

4

时钟模块

查询系统默认时间。

功能分配模块图:

程序流程图:

1.1.2.界面设计

登录界面如下图所示:

登录/注册成功后,转即进入主界面,如下图所示:

1.1.3.开发工具介绍

系统开发平台:

VisualC#.NET2008

数据库管理系统软件:

SQLServer2000

1.2.详细设计

1.2.1.Net的应用

NET中,用ADO.NET对数据库的访问已做了很多优化。

在访问数据库时用到的类分别如下:

(1)SqlConnection:

用来建立和SQLSever服务器连接,表示打开的数据库连接。

(2)SqlCommand:

表示执行SQL语句或数据库存储过程的调用。

(3)SqlDataAdapter:

用于填充数据集合或更新数据库,也可以用于存储SQL语句。

(4)DataRow:

表示数据库对象中的一行记录。

(5)Server:

表示要连接的SQLSever实例名,其中local代表数据库的本地地址。

如果要连接远程计算机,只须把local换成远程计算机的IP地址或计算机名即可。

(6)Userid:

表示SQLSever数据库的登录用户名。

(7)pwd:

表示SQLSever数据库的登录密码。

(8)Database:

表示要连接的SQLSever数据库的名称。

1.2.2.MailMessage类和SmtpClient类

利用System.Net.Mail命名空间中的MailMessage类和SmtpClient类实现电子邮件的发送功能。

(1)MailMessage类表示可以使用System.Net.Mail.SmtpClient类发送的电子邮件,该类用到的属性和方法的意义如下:

1Body属性:

获取或设置邮件正文。

2Subject属性:

获取或设置此电子邮件的主题行。

3Sender属性:

获取或设置此电子邮件的发件人地址。

4MailMessage方法:

使用指定的System.Net.MailAddress类对象初始化System.Net.Mail.MaileMessage类的新实例。

(2)SmtpClient类允许应用程序使用简单邮件传输协议(SMTP)来发送电子邮件,该类用到的属性和方法意义如下:

①Timeout属性:

获取或设置一个值,该值指定同步Send调用的超时时间。

②Send方法:

将指定的电子邮件发送到SMTP服务器以便传递。

使用System.String对象指定邮件的发件人、收件人、主题和邮件正文。

③SmtpClient方法:

初始化System.Net.Mail.SmtpClient类的新实例,让其使用指定的SMTP服务器和端口发送电子邮件。

1.2.3.Graphics对象的应用

绘制直线是通过DrawLine方法来实现;

绘制椭圆是通过DrawEllipse方法来实现。

DateTime类用来表示时间上的一刻,通常以日期和当天的时间表示。

该类用到的属性的意义如下:

(1)Hour属性:

获取DateTime对象所表示的日期的小时。

(2)Minute属性:

获取DateTime对象所表示的日期的分钟。

(3)Second属性:

获取Datetimeduixiang所表示的日期的秒数。

(4)Now属性:

获取一个DateTime对象,显示计算机上的当前日期和时间。

1.2.4.UDP的应用

UdpClient类位于System.Net.Sockets命名空间下。

(1)Connect方法:

建立默认远程主机。

(2)Send方法:

发送数据报。

(3)Receive方法:

接收数据报。

(4)Close方法:

关闭。

(5)Client属性:

获取或设置基础网络套接字。

(6)EnableBroadcast属性:

是否接收或发送广播。

1.3.注册功能的实现

若用户没有账号,必须注册后才能登陆主界面。

注册后的用户信息将会直接存储在数据库中的Users表里。

关键代码如下:

SqlConnectionconn;

//定义SqlConnection对象实例

conn=newSqlConnection("

server=.;

database=Users;

uid=sa;

pwd=123456"

);

stringadd_table="

insertintoUsersvalues("

+"

'

"

+txtName.Text+"

+'

'

+txtPassword.Text+"

)"

;

SqlCommandcomm=newSqlCommand(add_table,conn);

//创建命名对象

comm.CommandType=CommandType.Text;

comm.Connection.Open();

//连接打开

try//执行建表操作

{

inti=comm.ExecuteNonQuery();

//MessageBox.Show(i.ToString());

//label2.Text="

影响的行数:

+i.ToString();

MessageBox.Show("

注册成功!

FrmLoginfrm=newFrmLogin();

frm.Show();

this.Hide();

txtName.Text="

txtPassword.Text="

}

catch

MessageBox.Show("

操作失败,请重新操作!

}

conn.Close();

comm.Dispose();

1.4.登陆功能的实现

若已有账号可直接进行登陆,利用数据库的动态查询功能进行用户身份验证,成功即转入主界面。

stringConstrl="

//生成连接数据库字符串

SqlConnectioncon=newSqlConnection(Constrl);

stringSqlstrl="

select*fromUserswhere昵称='

and密码='

//动态查询

SqlDataAdapterada=newSqlDataAdapter(Sqlstrl,con);

DataTabledt=newDataTable();

//创建DataTable对象实例

ada.Fill(dt);

inti=dt.Rows.Count;

//提出数据表记录的行数

if(i>

=1)

{

FrmLoadfrm=newFrmLoad();

frm.Show();

//显示登陆主界面

this.Hide();

else

输入登录信息有误,请重新输入!

"

信息提示"

MessageBoxButtons.OK,MessageBoxIcon.Information);

//提示框

1.5.发送邮件功能的实现

(1)自定义公用变量,具体代码如下:

MailMessageMail;

SmtpClientClient;

(2)自定义函数CreateTimeOutTestMessage实现电子邮件的发送,具体代码如下

publicvoidCreateTimeoutTestMessage(stringserver)

try

{//实例MailMessage类

Mail=newMailMessage(this.txtFrom.Text,this.txtGet.Text);

Mail.Subject=this.txtSubject.Text.Trim().ToString();

Mail.Body=this.richTextBox1.Text.Trim().ToString();

Client=newSmtpClient(server,25);

//实例一个SmtpClient类

Client.Send(Mail);

邮件发送成功!

catch(Exceptioney)

MessageBox.Show(ey.Message);

(3)双击“发送”按钮,添加该按钮的单击事件代码,具体如下:

privatevoidbutton1_Click(objectsender,EventArgse)

if(this.richTextBox1.Text.Trim().ToString()!

="

{

CreateTimeoutTestMessage("

//参数传的是POP3服务器的名称

请注意邮件格式!

return;

1.6.聊天室功能的实现

(1)获取IP地址

(2)定义接收数据线程方法Receive

1.7.查询系统时钟功能的实现

(1)绘制时钟,自定义函数myclock,具体代码如下:

privatevoidmyclock(inth,intm,ints)

GraphicsmyGraphics=pictureBox1.CreateGraphics();

//创建Graphics对象实例

myGraphics.Clear(Color.White);

//设置背景色为白色

PenmyPen=newPen(Color.Black,1);

//设置画笔的颜色和宽度

myGraphics.DrawEllipse(myPen,pictureBox1.ClientRectangle);

//绘制椭圆

PointCPoint=newPoint(pictureBox1.ClientRectangle.Width/2,pictureBox1.ClientRectangle.Height/2);

PointSPoint=newPoint((int)(CPoint.X+(Math.Sin(6*s*Math.PI/180))*s_pinlen),(int)(CPoint.Y-(Math.Cos(6*s*Math.PI/180))*s_pinlen));

PointMPoint=newPoint((int)(CPoint.X+(Math.Sin(6*m*Math.PI/180))*m_pinlen),(int)(CPoint.Y-(Math.Cos(6*m*Math.PI/180))*m_pinlen));

PointHPoint=newPoint((int)(CPoint.X+(Math.Sin(((30*h)+(m/2))*Math.PI/180))*h_pinlen),(int)(CPoint.Y-(Math.Cos(((30*h)+(m/2))*Math.PI/180))*h_pinlen));

myGraphics.DrawLine(myPen,CPoint,SPoint);

//绘制直线

myPen=newPen(Color.Black,2);

myGraphics.DrawLine(myPen,CPoint,MPoint);

myPen=newPen(Color.Black,4);

myGraphics.DrawLine(myPen,CPoint,HPoint);

(2)计时器控件Tick事件代码,具体如下:

privatevoidtimer1_Tick(objectsender,EventArgse)

inth=DateTime.Now.Hour;

//定义变量并赋值

intm=DateTime.Now.Minute;

ints=DateTime.Now.Second;

myclock(h,m,s);

//调用myclock函数

this.Text="

现在的时间是:

+h.ToString()+"

:

"

+m.ToString()+"

+s.ToString();

//为窗体的Text属性赋值

2.运行测试

2.1.程序测试

(1)具体步骤:

在本地主机附加相对应的数据库后输入自定义的昵称和密码注册。

(2)具体步骤:

注册成功后,分别出现信息提示框①和②,点击即可进入主界面。

提示框①提示框②

(3)具体步骤:

对主界面进行操作选择。

(4)具体步骤:

若选择发送邮件,即可进入发送邮件界面,按格式输入。

(5)具体步骤:

若选择聊天室,即可进入局域网广播聊天室界面。

(6)具体步骤:

若选择时钟,即可进入系统时钟界面。

(7)具体步骤:

若选择退出,项目关闭。

2.2.存在的不足

本项目存在的不足仍有很多,界面过于单调,可再加入flash或音乐,鼠标的操作也可加入动态显示。

菜单的功能覆盖面不广,可结合当今时代潮流的元素,如:

围脖,rebot对话……现有功能的完整度也有待提高,与数据库的的结合还不够紧密,还不能很好地利用到。

3.总结

1.多看多写

看一下,别人写的代码,会养成一个好的编程习惯。

但是更加重要的是,要看一个比较成熟的代码。

2.多编多敲

看了代码,就要写代码,,可以跟他们相同。

这是了解他们的代码,也了解代码的执行过程。

特别是在编译的时候,你会发现的你的进步和不足。

在失败中取的微小的成功,是一件很快乐的事情。

在敲代码的时候,你会发现,你的很多英文都会输入错误。

3.多多交流

也许很简单的,问题。

都是一些很简单的属性设置的问题,或许一些你很想不到的边边角角的问题,你总是会感到迷茫,但是,不要担心,你要充分利用帮助文件,很网络的资源。

特别是,在学习C#的时候,很多人,很懒得安装MSDN,确实,那些占用很多空间。

但是,那些里面有很多好东西,会教你很多的属性的资料,和很多方法。

通过,网络的搜索,很会找到很多,有关的话题的解决方法,很多你遇到的问题,很有可能,早就被人发现,和被人解决。

你会在寻找问题的答案中,获得进步。

本身发现问题和解决问题,就是一大进步。

教师评分

创新性(5)

难/复杂度(15)

完成情况(50)

设计报告(30)

总计

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 法律文书 > 调解书

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2