欢迎来到论文网! 识人者智,自知者明,通过生日认识自己! 生日公历:
网站地图 | Tags标签 | RSS
论文网 论文网8200余万篇毕业论文、各种论文格式和论文范文以及9千多种期刊杂志的论文征稿及论文投稿信息,是论文写作、论文投稿和论文发表的论文参考网站,也是科研人员论文检测和发表论文的理想平台。lunwenf@yeah.net。
您当前的位置:首页 > 科技论文 > 计算机论文

网络数码扩印系统的设计与实现

时间:2011-04-24  作者:秩名

论文导读:对数码扩印的需求日益上升。因此引入网络数码扩印系统来实现不同地域数码资源的共享。网络数码扩印系统旨在通过远程注册和影像传输机制。
关键词:数码扩印,网络数码扩印系统,影像传输
1 引言
随着数码技术的发展和数码产品快速普及的增长,对数码扩印的需求日益上升。但数码扩印机价格昂贵,一些传统冲扩店无力引进数码扩印机开展数码扩印业务。另一方面,拥有数码扩印设备的冲扩店为了加快资金回报,不使设备闲置,需要有大量的生产量。因此引入网络数码扩印系统来实现不同地域数码资源的共享。
该系统以网络为工具,采用“中心店+加盟店”的连锁模式开展数码影像服务。其目标是:通过Internet,实现加盟店影像文件安全﹑可靠﹑及时地传递到拥有扩印设备的中心店以供冲印,为跨地域客户提供一体化﹑多元化的服务;同时满足中心店对加盟店营业情况查询﹑统计的需求,为中心店决策提供支持。
论文将详细介绍系统的结构﹑功能框架以及开发过程中所用到的关键技术及实现方法。
2 系统结构
2.1 业务描述
系统主要分为四部分:中心店服务器﹑加盟店﹑前台和影像工作站。加盟店通过广域网与服务器相连,前台则通过局域网分别与服务器和影像工作站连接。其业务模型如图1所示。
中心店服务器带有数据库,保存着加盟店注册信息,加盟店及影像工作站的扩印信息,如扩印尺寸﹑数量﹑营业额等。主要功能包括:①处理加盟店发来的事务请求(如注册﹑传送﹑查询),作出相应回答;②接收﹑保存远程加盟店传送的图像和扩印单,并根据扩印信息更新数据库。论文发表
加盟店主要功能包括三方面:①收集需要扩印的信息,生成扩印信息文件,并将扩印信息添加到本地数据库,供本地查询和更新;②向服务器发出传送﹑查询等请求,并接受服务器的申请处理结果;③向服务器传送待扩印的影像文件和扩印信息文件。
前台为中心店的扩印业务管理平台,它的主要功能是:①处理影像工作站发来的请求(传送﹑查询);
②接收各影像工作站发送的扩印信息文件,将信息更新到服务器数据库;③负责扩印单管理,如收费﹑标注﹑打印﹑查询,为管理人员提供业务查询﹑统计等功能。
影像工作站一方面负责向前台发送本地扩印信息文件;另一方面向前台查询扩印单完成情况,并接受前台发回的应答信息。
2.2 功能框架
 

 
 

根据上述的系统业务分析,设计出本系统功能模块如图2 所示。论文发表。
3 系统设计及关键技术
3.1 网络通信机制与实现
网络数码扩印系统的核心在于加盟店和中心店之间影像文件的传输,由于加盟店是通过广域网连接到服务器的,因而在远程文件传输过程中必须保证传输的安全性、可靠性。为此,系统采用Socket编程控制客户端(加盟店)与服务器端的安全连接。在文件传输前,客户端与服务器端通过Socket套接字以问答方式传递通信双方事先约定的控制信号,接收方根据收到的信号类型作出相应处理,以此保证通信双方身份真实性,避免客户端文件的误传和服务器端不良数据的出现。表1给出了通信双方定义的主要控制信号类型及含义。
通信双方通过身份验证后,客户端请求传送文件。由于Socket可传送的数据量较小,在传送较大文件时,需要将文件进行分割。而系统所传送的影像文件数据量较大,因此,在连接建立后,采用FTP协议来传输影像文件。这种方式可避免文件分割、整合带来的弊端,保证了程序编制的灵活性、高效率和软件可靠性。
下面以客户端(加盟店)为例,给出根据控制信号类型和当前的网络状态进行交互式通信的核心代码。
switch(m_CurState)//m_CurState为当前网络状态
{
m_NetPass.SetCommPWD(pMsg,sizeof(TNetMsg));//服务器发来的信息是经过加密的,因此先调用加/解密模块进行解密
caseNet_Only_Linked: //服务器端已确认客户端连接
If (pSMsg->mask==MSG_ASK_LEAGUE)
{msg->mask=MSG_ANSWER_LEAGUE;
strcpy(msg.no,this->m_pDoc->m_LeagueInfo.m_legueID;
…//为各个参数赋值
m_NetPass.SetCommPWD(&msg,sizeof(TNetMsg));//调用加密模块对身份信息进行加密
Send(&msg,sizeof(TNetMsg));}//发送客户端身份信息
break;
case Net_SENT_LEAGEU_MSG://服务器已收到身份信息,验证通过后,发送FTP密码
If(pSMsg->mask==MSG_FTPPASSWORD)
{ If(m_pFtp->OpenFTP())//验证收到的FTP密码
{pMsg->mask=FTP_PASSWORD_OK;
SendMsg(pMsg);} }
break;
caseNET_FTP_LINKEDOK://服务器端回复客户端的请求
If (pSMsg->mask==MSG_ANSWER_NEWORDER)//服务器同意上传文件
{pMsg->mask=MSG_FTPSENDING_FILE;
SendMsg(pMsg);
m_pDoc->m_pFtpThread=AfxBeginThread(m_pFtp->CFtpThread,(LPVOID)param);}//客户端启动发送线程
If (pSMsg->mask==MSG_ANSWER_NOORDER)
{AfxMessageBox(“不允许上传文件”);}
If (pSMsg->mask==MSG_ANSWER_ORDER)//返回订单扩印信息
{ If (pSMsg->order==Finish)
AfxMessageBox(pSMsg->orderID+“扩印完成”);}
break;}
case NET_FTP_SENDING://文件正在传输
If (pMsg->mask=MSG_FTPSERVER_SAVEOK).//服务器已成功保存文件
If (m_pFtp) {delete m_pFtp;//关闭连接}
break;
}
加盟店首次向服务器传送文件之前,先利用注册程序进行联网注册。因此,服务器端应用程序应设置两个通信端口,一个用于监听欲注册的客户端,一个用于监听已注册用户的连接请求。同时,服务器端需要同时处理多个客户端的请求,与多个客户端实现并行通信。为此,在服务器端建立一个Socket队列,一旦监测到有客户端连接,即为该客户端建立一个Socket并将它加入Socket队列中,当服务器端收到客户端发来的消息时,就从Socket队列中取出相应的套接字进行通信,以便并行通信过程中不至于发生混乱。
系统中,影像工作站通过局域网向前台传送保存扩印信息的文本文件,由于传输数据量较小,采用Winsock实现文件的传送。论文发表。通信时,前台作为服务器端,工作站为客户端,各客户端通过统一的端口与服务器端建立连接,成功后开始数据传送。此过程较为简单,在此不做赘述。
3.2 界面的动态生成
加盟店和影像工作站的用户通过客户端界面输入相应的扩印信息,而用户界面内容与中心店提供的服务项目和类型相关。由于中心店的服务项目不定期地发生变更,因此用户界面与扩印信息格式难以固定。考虑到软件的通用性和灵活性,减少用户的修改操作,客户端应用程序采用读取服务器提供的配置文件的方式动态生成用户界面。客户端与服务器端建立Socket连接后,发送查询服务器端配置文件版本号的请求,若与本地配置文件版本不符,则从服务器下载新版本配置文件,获取配置文件各个参数后,重新生成界面。
3.3 多线程的使用
互联网的传输速率较低,且影像文件传输数据量大,为了不妨碍加盟店客户端界面的显示和运行、占用过多的系统资源,客户端应用程序使用多线程技术生成一个后台线程,专门负责影像文件的传送,实现多任务并行。
4 结束语
网络数码扩印系统旨在通过远程注册和影像传输机制,实现跨地域的资源共享,缩短扩印周期。该系统采用VC++.NET开发,后台数据库为SQLServer7.0。目前,已在某集团公司投入使用,效果良好。

参考文献
[1] 蒋东兴﹒Windows Socket网络程序设计大全[M]﹒北京﹕清华大学出版社﹐1999
[2] 万跃华﹐胥芳﹐张宪﹒Visual C++.NET网络编程[M]﹒北京﹕科学出版社﹐2002
[3] Anthony Jones﹒Windows网络编程技术[M]﹒机械工业出版社﹐2002
 

查看相关论文专题
加入收藏  打印本文
上一篇论文:网络封锁系统的改进方法研究
下一篇论文:网上购物系统的设计与开发
科技论文分类
科技小论文 数学建模论文
数学论文 节能减排论文
数学小论文 低碳生活论文
物理论文 建筑工程论文
网站设计论文 农业论文
图书情报 环境保护论文
计算机论文 化学论文
机电一体化论文 生物论文
网络安全论文 机械论文
水利论文 地质论文
交通论文
相关计算机论文
    无相关信息
最新计算机论文
读者推荐的计算机论文