ImageVerifierCode 换一换
格式:DOCX , 页数:28 ,大小:550.53KB ,
资源ID:20253429      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/20253429.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(企业短信群发系统研究与实现毕业设计Word文档格式.docx)为本站会员(b****6)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

企业短信群发系统研究与实现毕业设计Word文档格式.docx

1、系统采用人机交互的方式,界面美观友好,信息查询灵活、方便,数据存储安全可靠。实现通过输入的手机号码或通过电话簿选择的手机号码进行短信群发。对用户输入的数据进行严格的数据检验,尽可能的避免人为错误。实现接收SIM卡中的短信内容,并显示给用户。实现对发送短信的历史记录进行查询,支持模糊查询。系统最大限度地实现了易维护性和易操作性。2 相关技术介绍2.1 开发语言简介:C# 随着现代社会生活节奏的不断加快,软件的开发周期要求越来越短,这就要求有一种简单易开发的语言工具出现,而C#的出现正好适应了这种要求。 C#是微软公司为Visual Studio开发平台推出的一种简洁、安全的面向对象的编程语言,开

2、发人员可以通过它编写在.NET Framework上运行的各种安全可靠的应用程序,例如控制台应用程序、WinForms应用程序和Web应用程序等。由于C#简单易学,而且可以跨平台使用,因此它正在成为程序开发人员使用的主流编程语言。2.2 数据库分析:Microsoft Access 2000一套完善的系统离不开数据库的设计,数据库设计的好与坏直接影响系统运行的效率,所以在制作某个系统之前,首先要根据系统的具体要求以及实现的功能去设计数据库,根据项目的成本以及整个系统的信息量去选择数据库。 在企业短信群发系统中,由于系统的信息量不是很大,并且系统的项目成本不高,在功能上主要以发送和接受短信为主,

3、数据库用来存储发送的信息、电话簿信息、用户信息以及常用短语,因此对数据库的要求并不是很高,所以本系统采用Microsoft Access 2000作为后台数据库,数据库命名为db_SMS,其中包含了5张数据表,用于存储不同的信息。Access 是微软公司推出的基于Windows的桌面关系数据库管理系统(RDBMS),是Office系列应用软件之一。它提供了表、查询、窗体、报表、页、宏、模块7种用来建立数据库系统的对象;提供了多种向导、生成器、模板,把数据存储、数据查询、界面设计、报表生成等操作规范化;为建立功能完善的数据库管理系统提供了方便,也使得普通用户不必编写代码,就可以完成大部分数据管理

4、的任务。2.3 短信猫技术所谓短信猫,其实是一种工业级GSM MODEM,通过串口与计算机连接,可以通过AT指令控制进行短信收发的设备。国内目前应用较多的短信猫,都是以SIEMENS或WAVECOM模块为核心组装而成的,与普通手机相比更为稳定高效。在购买短信猫时会附带SDK开发包。其中提供了操作短信猫的函数(封装在dllforvc.dll动态链接库中)。下面对操作短信猫的主要函数进行简单的介绍。 GSMModemGetSnInfoNew函数(该函数用于获取短信猫注册需要的信息。) GSMmodemGetDevice函数(该函数用于获取当前的通信端口。 GSMmodemGetBaudrate函数

5、(该函数用于获取当前波特率。 GSMmodemInitNew函数(该函数用于初始化短信猫。 GSMmodemSMSsend函数(该函数用于发送手机短信。 GSMmodemSMSReadAll函数 (该函数用于获取所有短信息,包括手机中的和SIM卡中的。3 概要设计3.1 需求分析如果公司想通知远在外地的职员回公司报到,传统方法是拨打每个职员的电话进行通知,现在开发出企业短信群发系统,便可以编写一条告知职员回来报到的短信,然后添加所有身在外地的职员的电话号码,统一发送出去,大大提高了办公的效率。但是,手机短信虽然方便使用,可是由于手机硬件条件的限制,它存在着打字不灵活、不能存储更多的客户信息等缺

6、陷。为了更好的将手机短信作为企业的一种交流与合作,对这些缺陷进行针对性的改进就显得很有必要了。企业短信群发系统就是为了实现计算机上进行手机短信息的操作,也就是在计算机上将手机短信进行编辑和管理,通过手机上连接电脑的数据线,将需要群发的短信通过手机进行发送。本文所开发和阐述的就是它开发和研制过程。3.2 结构设计3.2.1 各功能模块和示意图 本系统主要分为六大功能模块: 1 名片管理 增加联系人:增加、删除电话簿中的联系人 所有联系人:查看所有联系人信息2 短信操作 短信群发:发送短信3 短信记录 已发送短信:查看已发送的短信信息 已接收短信:查看已接收的短信信息4 常用短语 添加短语:增加、

7、删除常用短语 所有短语:查看所有的常用短语5 系统管理 密码修改:修改用户密码 退出系统:退出本系统 锁定系统:锁定本系统6 帮助 关于:系统相关企业短信群发系统功能结构图如下:图1 系统功能结构图3.2.2 各功能模块关系“短信操作”、“系统管理”和“帮助”3个模块为一般用户和系统管理员所共有,主要进行短信群发和实现修改密码、退出系统、锁定系统的功能,以及查看系统相关信息等。而“电话簿管理”、“短信记录”和“常用短语”则仅为系统管理员所拥有,主要实现增删联系人、查看短信的记录和增删及查看常用短语的功能。图2 各模块关系图4 数据库设计4.1 数据库概念设计系统开发过程中,数据库设计占有重要的

8、地位,数据库设计的原则是根据系统的整体需求而定的。例如,在本系统中,为了增加系统的安全性,每个用户只有在系统登录模块严重成功后才能进入主窗体。这时,就要在数据库中创建一个存储登录用户名、登录密码以及权限的管理员基本信息表。管理员基本信息表实体E-R图如下:图3 管理员基本信息实体E-R图为了能够减少短信息的输入量,系统将一些常用的短语存储在数据表中。当需要插入常用短语的时候,就可以通过程序直接从数据表中提取。为了实现此功能,在数据库中创建常用短语信息表。常用短语信息实体E-R图如下:图4 常用短语信息实体E-R图开发企业短信群发系统时,短信的群发与接收时系统必须具备的功能。然而通过程序读取短信

9、猫中SIM卡的内容时,读出的内容会呈现不规则的排列方式。这时,需要将这些不规则的短信内容进行转换并且存储在数据表中,然后通过数据控件显示到窗体中。已接收短信信息实体E-R图如下:图5 已接收短信实体E-R图电话簿是用来存储一些常用联系人的名称以及手机号码。如果忘记了某个人的联系方式,可以通过电话簿进行查找,同时发送短信息时还可以通过电话簿选择短信的接收者。电话簿信息实体E-R图如下:图6 电话簿信息实体E-R图系统将短信进行群发以后,应该将所有的发送记录存储起来,以便用户对已发送短信进行查询。为了实现此功能,必须在数据库中建立一个存储已发信息的数据表。已发信息实体E-R图如下:图7 已发短信实

10、体E-R体分析完系统的实体需求以后,根据每个实体的E-R图创建系统所需的各个表。系统数据库中的所有表及其用途如图10及表1所示:图8 数据库db_SMS中的所有表表1 系统数据库中的所有数据表数据表名称 用 途Tb_Admin 用于存储系统用户的登录用户名、密码和权限 Tb_note 用于存储系统的所有常用短语 Tb_Resvice 用于存储系统接收到的所有短消息 Tb_tel 用于存储系统电话簿中的所有联系人名称及其手机号码 Tb_TelSend 用于存储所有系统已发短信息4.2 数据库逻辑结构设计根据设计好的E-R图创建数据库的逻辑结构,数据库中各表的结构如下:tb_Admin(管理员基本

11、信息表)表tb_Admin用于保存管理员的基本信息,该表的结构如表2所示:表2 管理员基本信息表字 段 名 数 据 类 型主 键描 述 ID 自动编号 是 管理员系统编号 AdminUserName 文本 否 登录用户名 AdminUserPwd 登录密码 power 管理员权限tb_note(常用短语信息表)表tb_note用于保存一些常用的短语,该表的结构如下所示:表3 常用短语信息表常用短语系统编号 type 常用短语类型 note 备注 常用内容tb_Resvice(已接收短信信息表)表tb_Resvice用于保存已经接收的所有短信的内容,该表的结构如下所示:表4 已接收短信信息表已接

12、收短信系统编号 smsnum 发送短信的号码 smscontent 已接收短信内容tb_tel(电话簿信息表)表tb_tel用于保存所有常用联系人的姓名、性别及其电话号码,该表的结构如下所示:表5 电话簿信息表 电话簿信息系统编号 UserName 联系人姓名 UserSex 联系人性别 UserTel 联系人手机号码tb_TelSend(已发短信信息表)表tb_TelSend用于保存所有已发信息的历史记录,该表的结构如下所示:表6 已发短信信息表 已发短信系统编号 TelNum 接收者号码 TelContent 短信内容 TelTime 发送时间4.3 数据库的链接 本系统中主要创建了两个公

13、共类:ConnClass类和GSM类。其中,ConnClass类主要用来Microsoft Access 2000数据库。下边主要对这个类进行介绍。 ConnClass类中,因为本系统使用的是Microsoft Access 2000数据库,所以在命名空间区域内引用using Symtem.Data.OleDb来连接数据库。主要代码如下: using System ;using System.Collections.Generic ; using System.Text ; using System.Data ; using System.Data.OleDb ; /引用命名空间,以便连接Ac

14、cess数据库 using System.Windows.Forms ; namespace SMS.BaseClass class ConnClass Public static OleDbConnection DataConn() / 获取Access数据库的绝对路径 string strg = Applicatins.StartupPath.ToString ; string = strg.Substring(0, strg.LastIndexOf(”) ; strg += ”DataBase” ; strg += ”db_SMS.mdb” ;return new OleDbConnec

15、tion(”Provider = Microsoft.Jet.OLEDB.4.0 ; DataSource=”+strg) ; 5 详细设计5.1 各部分详细设计从组成上来说,“登录模块”“主窗体模块”“短信群发模块”“短信接收模块”“电话簿管理模块”“常用短语模块”这6个模块构筑并实现了整个系统由登录到退出的所有功能。下边分别对这6个模块进行介绍。5.1.1 登录模块为了增强系统的安全性,基本上每一个管理系统都会有登录模块。登录模块主要用于对进入系统的用户进行安全性检查,以防止非法用户进入系统。只有登录模块验证成功的用户才可以进入管理系统的主界面。所以,登录模块变得尤为重要。而作为验证用户名

16、和密码是否合法的重要部件,有必要先对COUNT(*)函数进行简单的介绍。COUNT聚合函数用于返回组中项目的数量。用法如下: COUNT(ALLDISTINCTexpression)参数说明:ALL:对所有的值进行聚合函数运算。ALL是默认设置。DISTINCT:指定COUNT返回唯一非空值的常量。expression :一个表达式,其类型是除uniqueidentifier、text、image或next之外的任何类型。不允许使用聚合函数和子查询。返回类型:int 。本模块使用的数据表为tb_Admin,然后通过COUNT(*)函数以登录的用户名和密码作为搜索条件,并返回符合查询的数目,最后

17、根据返回的数目判断登录用户名和密码是否正确。打开登陆窗口单击“登录”按钮后,登录模块首先判断是否输入了用户名和密码,如果没有输入,就会弹出提示框,提示用户登录系统的用户名和密码不能为空;如果已经输入了用户名和密码,系统会判断输入的用户名和密码是否正确。假如不正确,系统会弹出提示框进行提示。private void btnLogin_Click(object sender, EventArgs e) try if (txtLoginName.Text = ) / 判断是否输入了用户名 MessageBox.Show(用户名不能为空); /弹出提示信息 else if (txtLoginPwd.T

18、ext = ) / 判断是否输入密码密码不能为空 else / 创建数据库连接 OleDbConnection conn = BaseClass.ConnClass.DataConn(); conn.Open(); OleDbCommand cmd = new OleDbCommand(select count(*) from tb_Admin where AdminUserName= + txtLoginName.Text + and AdminUserPwd= + txtLoginPwd.Text + , conn); / 获取返回值 int i = Convert.ToInt32(cmd

19、.ExecuteScalar(); if (i 0) / 如果i0,说明用户名和密码正确 frmMain main = new frmMain(); main.adminname = txtLoginName.Text; main.admintime = DateTime.Now.ToShortDateString (); main.Show(); this.Hide(); / 隐藏登录窗体 / 弹出提示用户名或者密码错误 catch (Exception ex) MessageBox.Show(ex.ToString(); private void btnCancel_Click(objec

20、t sender, EventArgs e) this.Close(); private void txtLoginPwd_KeyPress(object sender, KeyPressEventArgs e) if (e.KeyChar = 13) btnLogin_Click(sender,e);图9 登录流程图5.1.2 主窗体模块每个系统的开发都离不开对主窗体的设计。通过主窗体可以快速地连接和使用系统支持的所有功能。当用户通过登录模块成功地登录系统以后,会进入系统的主窗体。在主窗体中,大体可以分为3个部分。上端是整个系统的操作菜单,其中包括名片管理、短信操作、短信记录、常用短语、系统

21、管理和帮助,每个操作菜单下还有子菜单。中间部分是所有功能显示区域。下端是系统状态显示栏。 当窗体加载时,首先将登录用户名和登录时间显示到主窗体的状态栏中,并且根据登录用户名在数据库中查找与之对应的管理权限。如果用户使用普通账号登录系统后,将进入普通用户的主窗体,在该窗体中只给出部分权限,只能进行一般的短信操作和系统管理。关键代码如下:private void Form1_Load(object sender, EventArgs e)toolStripStatusLabel5.Text = DateTime.Now.ToString(); toolStripStatusLabel2.Text

22、= adminname; toolStripStatusLabel8.Text = admintime;/连接数据库 OleDbConnection conn = BaseClass.ConnClass.DataConn(); OleDbCommand cmd = new OleDbCommand(select power from tb_Admin where AdminUserName=+adminname+,conn); conn.Open(); / 打开数据库 string userPower = Convert.ToString(cmd.ExecuteScalar(); / 判断登录

23、用户的权限 if (userPower = 0 / 禁用下列菜单 名片管理MToolStripMenuItem.Enabled = false; 短信记录SToolStripMenuItem.Enabled = false; 常用短语MToolStripMenuItem.Enabled = false; conn.Close();5.1.3 短信群发模块短信群发模块是整个系统中最为主要的模块。通过此模块可以将短信发送给单个或多个联系人。在本系统中,短信群发模块需要硬件短信猫的支持,所有短信都是通过短信群发模块调用短信猫发送出去的。当用户通过登录模块登录成功之后,会进入系统的主界面,在系统主菜单

24、中选择“短信操作”“短信群发”命令,打开“短信群发”窗体。在短信群发窗体中,需要用户手动输入短信接收者号码或者通过单击“电话簿”按钮打开“选择接收用户窗体”,从窗体中选择接收号码。当输入短信内容时,可以手动输入短信内容,也可以通过单击“插入短语”按钮来打开常用短语窗体,选择需要的短语。检查接受号码与短信内容无误后,单击“立即发送短消息”按钮即可完成对短消息的发送。短信群发模块的作用在于能够对收入或者选择的一组电话号码发送短信。系统首先连接硬件“短信猫”,然后在系统中通过程序控制短信的发送。在短信群发模块中,实现了手动添加短信接收者号码、删除接收者号码、从电话簿中选择接收号码和插入常用短语等功能

25、。当用户输入一组接收号码并且输入短消息后,单击“立即发送短信息”按钮即可通过短信猫将短消息发送出去。在短信群发模块中,关键技术是厂商提供的dllforvc.dll动态链接库中的GSMModemSMSsend函数,该函数用于将输入的短信通过短信猫发送到指定的电话号码中。该函数的参数及说明如下:DllImport(dllforvc.dll, /发送短信息EntryPoint = GSMModemSMSsend, CharSet = CharSet.Ansi, CallingConvention = CallingConvention.StdCall)public static extern bool GSMModemSMSsend( string serviceCenterAddress, / 标识短信中心号码,为NULL即可 int encodeval, / 标识短信息编码格式,如为8表示中文短信编码 string text, /标识短信内容 int textlen, / 标识短信内容的长度 string phonenu

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1