毕业论文范文网-论文范文
电气工程 会计论文 金融论文 国际贸易 财务管理 人力资源 学前教育 德语论文 工程管理 文化产业 工商管理 会计专业 行政管理 广告学
机械设计 汉语文学 英语论文 物流论文 电子商务 法律论文 工商管理 旅游管理 市场营销 药学论文 播音主持 人力资源 金融论文 保险学
制药工程 生物工程 包装工程 模具设计 测控专业 工业工程 教育管理 行政管理 计算机论 电子信息 市场营销 法学论文 财务管理 投资学
体育教育 小学教育 印刷工程 土木工程 书法论文 护理论文 心理学论 信息管理 公共事业 给水排水 新闻专业 摄影专业 广电编导 经济学
  • 范文首页 |
  • 毕业论文 |
  • 论文范文 |
  • 计算机论文 |
  • 外文翻译 |
  • 工作总结 |
  • 工作计划 |
  • 现成论文 |
  • 论文下载 |
  • 教学设计 |
  • 免费论文 |
  • 原创论文 |
搜索 高级搜索

原创毕业论文

当前位置:毕业论文范文网-论文范文 -> 免费论文 -> 计算机论文

基于cs模式的图书管理系统毕业文档(五)

作者: 浏览:637次
免费专业论文范文
免费专业论文
政治工作论文
计算机论文
营销专业论文
工程管理论文范文
医药医学论文范文
法律论文范文
生物专业论文
物理教学论文范文
人力资源论文范文
化学教学论文范文
电子专业论文范文
历史专业论文
电气工程论文
社会学专业论文
英语专业论文
行政管理论文范文
语文专业论文
电子商务论文范文
焊工钳工技师论文
社科文学论文
教育论文范文
数学论文范文
物流论文范文
建筑专业论文
食品专业论文
财务管理论文范文
工商管理论文范文
会计专业论文范文
专业论文格式
化工材料专业论文
英语教学专业论文
电子通信论文范文
旅游管理论文范文
环境科学专业论文
经济论文
人力资源论文范文
营销专业论文范文
财务管理论文范文
物流论文范文
财务会计论文范文
数学教育论文范文
数学与应用数学论文
电子商务论文范文
法律专业论文范文
工商管理论文范文
汉语言文学论文
计算机专业论文
教育管理论文范文
现代教育技术论文
小学教育论文范文
机械模具专业论文
报告,总结,申请书
心理学论文范文
学前教育论文范文

收费计算机专业论文范文
收费计算机专业论文
Delphi
ASP
VB
JSP
ASP.NET
VB.NET
java
VC
pb
VS
dreamweaver
c#.net
vf
VC++
计算机论文
毕业论文范文题目:基于cs模式的图书管理系统毕业文档(五),论文范文关键词:基于cs模式的图书管理系统毕业文档(五)
基于cs模式的图书管理系统毕业文档(五)毕业论文范文介绍开始:
 第五章 系统界面与代码设计
  5.1 服务器端设计
  5.1.1 服务器端Winsock控件
 Winsock控件是一个在运行中不可见的控件,所以当程序运行时,主界面并不显示它,而只是在后台运作。Winsock控件对Winsock API进行了封装,屏蔽了用Winsock编写TCP/IP应用的细节,使用时不必了解TCP/IP具体内容和如何调用Winsock API,所以使用起来非常方便,只要设置好相应属性,在一些触发事件过程中做好相应的处理,就能实现网络应用程序的编写。
 在本系统中服务器会分别给不同的客户端安排不同的Winsock连接,每当有新的客户请求连接时,服务器首先检验是否有空闲的Winsock控件来接受请求,有就用空闲Winsock来接受请求,不然服务器会动态生成新的Winsock控件,然后用新生成的控件请求。当Winsock控件数组接收到数据时,先将数据按间隔的逗号分开,提取帧头和类型,并对数据内容分别做相应的处理。当网络连接关闭时,要找到网络连接列表中相应的记录,将网络连接状态显示为“断开”。另外,在利用sock发送数据之前一定要检验sock连接状态,否则当sock连接不是连接状态时,系统会出错。下面来看一下该控件的一些事件代码。
 
1.  Winsock触发Close事件:
Private Sub SockToCln_Close (index As Integer)  '网络连接关闭
Dim i As Integer
Dim FindItm As ListItem
    For i = 1 To ClMax
              If Client (i). index = index Then    '找到该连接
            Set FindItm = Me.LvCnn.FindItem (Client (i). UsrID)
                FindItm.SubItems(1) = "断开"
                FindItm.SubItems (2) = Now
            Exit For
        End If
    Next i
  End Sub

2. Winsock触发ConnectionRequest事件:
'接受连接请求
Private Sub SockToCln_ConnectionRequest (index As Integer, ByVal requestID As Long)
Dim i As Integer
     For i = 1 To MaxSvrSock   '查询是否有关闭的空闲控件
        If SockToCln(i).State = sckClosed Then
            SockToCln(i).LocalPort = 0
          If SockToCln(i).LocalPort = SvrPort Then  '不能占用侦听端口
                Exit Sub
            End If
           SockToCln(i).Accept requestID
           Exit Sub
        End If
    Next  i
    '没有空闲的控件,原有socket都被占用,需要新增Winsock
    MaxSvrSock = MaxSvrSock + 1         '控件数增加
    Load SockToCln(MaxSvrSock)          '动态生成一个winsock控件
    SockToCln(MaxSvrSock).LocalPort = 0     '设置新端口
    SockToCln(MaxSvrSock).Accept requestID  '接受连接请求
End Sub

3.  Winsock触发DataArrival事件:
'接受并处理数据
Private Sub SockToCln_DataArrival (index As Integer, ByVal bytesTotal As Long)
 Dim StrArrival As String, StrGet () As String
 Dim strBack As String
 Dim RdrID As String
 Dim bkNum As Long
 Dim StatNum As Integer
 Dim UsrID As String
 Dim UsrPwd As String   
 Me.SockToCln (index). GetData StrArrival, vbString     '接受数据
  If Len (StrArrival) < 1 Then
 Exit Sub
     StrGet () = Split (StrArrival, ",", -1)       '拆分接收到的数据
     Select Case StrGet(0)    '判断类型
       Case "Lend"   '图书借阅
         RdrID = StrGet (1)          '得到RdrID
         bkNum = Val (StrGet (2))     '得到BkNum
         strBack = CheckLend(RdrID, bkNum)  '回复客户端  
      Case "Return"  '图书归还
         bkNum = Val (StrGet (1))    '得到BkNum
         strBack = CheckReturn (bkNum)  '回复客户端
      Case "Pay"     '缴纳欠款
         RdrID = StrGet (1)           '得到RdrID
         strBack = CheckPay (RdrID)   '回复客户端  
          Case "Type"   '操作图书类别
         '调用BookType函数处理图书管理命令
         strBack = BookType (StrGet, index)         
 Case "Book"   '图书管理
         '调用BookInfo函数处理图书管理命令
         strBack = BookInfo(StrGet, index)       
 Case "Rdr"  '读者管理
         '调用Reader函数处理图书管理命令
         strBack = Reader (StrGet, index)       
      Case "Usr"   '管理员管理
         '调用User函数处理图书管理命令
         strBack = User (StrGet, index)  
      Case "Stat"  ‘借阅统计管理
         StatNum = Val (StrGet (1))  '得到StatNum
         strBack = CheckStat(StatNum)   '回复客户端
      Case "Cnn"  '连接信息
         UsrID = StrGet (1)       '得到UsrID
         UsrPwd = StrGet(2)       '得到UsrPwd
         strBack = CheckUsr (UsrID, UsrPwd, index)  '回复客户端  
     End Select   
 If Me.SockToCln (index).State <> sckConnected Then '检验sock连接
    Exit Sub
 End If
 Me.SockToCln (index).SendData strBack   '发送返回信息
 End Sub

 5.1.2  服务器端公共模块设计
    启动Visual Basic 6.0后,新建一个标准EXE工程,然后将该工程保存,选择保存路径,并命名为图书馆管理系统服务器工程。
 接着给该工程添加一个模块。选择菜单[工程]、[添加模块]命令,此模块中定义服务器端需要用到的公共变量和公共类型。下面是代码的实现过程。
 
 '定义全局ADO对象连接,用于连接数据库
 Public DBCnn As New ADODB.Connection
 '现存动态生成的Winsock控件数(不包括静态生成的那个保持帧听的控件)
 Public MaxSvrSock As Integer
 Public SvrPort As String    '服务器端口
 Public Client (1 To 100) As ClType  '允许连接100个客户端
 Public ClMax As Integer   '记录客户端连接最大下标
 Type ClType'定义客户端类型
 UsrID As String     '管理员ID
        index As Integer    '通道号
 End Type
 5.1.3 服务器端主界面预览

 

5.2  客户端设计
 5.2.1 客户端代码设计
1.  MDIForm_Load过程和MDIForm_Unload过程
Private Sub MDIForm_Load ()
       If App.PrevInstance Then  '确定该程序没有被启动过
         MsgBox "您已经启动过了本程序!"
         End
       End If
End Sub
Private Sub MDIForm_Unload (Cancel As Integer)
     If Me.SockToSvr.State <> sckClosed Then  '检查Winsock连接是否关闭
        Me.SockToSvr.Close
     End If 
End Sub

2.  客户端Winsock触发事件过程
Close 过程
 Private Sub SockToSvr_Close()
    '状态栏显示服务器状态
    MDIFrm.StatusBar1.Panels(1).Text = "服务器连接状态:断开。"
 End Sub
Connect过程
 Private Sub SockToSvr_Connect()  '连接服务器
 Dim str As String
    '向服务器发送请求数据=Cnn,Usr_ID,Usr_Pwd
    str = "Cnn," & UserNow.ID & "," & UserNow.Pwd & ","
    '检验sock连接并向服务器发送数据
    If MDIFrm.SockToSvr.State <> sckConnected Then
        MsgBox "还没有连接数据库,不能发送请求!"
        Exit Sub
    End If
   Me.SockToSvr.SendData str
 End Sub
DataArrival过程
   Private Sub SockToSvr_DataArrival(ByVal bytesTotal As Long)
 Dim StrArrival As String, StrGet() As String
 Dim Start As Integer
 Dim i As Integer, j As Integer, k As Integer
 Dim LtItm As ListItem
    '接收数据,String类型
    Me.SockToSvr.GetData StrArrival, vbString
 If Len(StrArrival) < 1 Then
 Exit Sub 
    '拆分接收到的数据
    StrGet() = Split(StrArrival, ",", -1)   
    '得到帧头,按不同类型做响应的处理
    Select Case StrGet(0)
    '用户管理
    Case "Usr"
        '按类型处理
        Select Case StrGet(1)
           '添加管理员
           Case "01"
            '状态栏显示服务器状态
               MDIFrm.StatusBar1.Panels(1).Text = "服务器连接状态:响应添加管理员。"
            '弹出提示框提示用户
             MsgBox StrGet(2), , "服务器响应"          
           '删除管理员
           Case "02"
            '状态栏显示服务器状态
               MDIFrm.StatusBar1.Panels(1).Text = "服务器连接状态:响应删除管理员。"
            '弹出提示框提示用户
             MsgBox StrGet(2), , "服务器响应"       
           '查询管理员
           Case "03"
            '状态栏显示服务器状态
                MDIFrm.StatusBar1.Panels(1).Text = "服务器连接状态:响应查询管理员。"
            '清空列表
            FrmUsrQuery.ListUsrResult.Clear
            '在列表中显示查询结果
            For i = 0 To UBound(StrGet) - 2
                FrmUsrQuery.ListUsrResult.AddItem StrGet(i + 2)
            Next i          
        End Select                       
    '读者管理
    Case "Rdr"
        '按类型处理
        Select Case StrGet(1)
           '添加读者
           Case "01"
               MDIFrm.StatusBar1.Panels(1).Text = "服务器连接状态:响应添加读者。"
              MsgBox StrGet(2), , "服务器响应"          
           '删除读者
           Case "02"
               MDIFrm.StatusBar1.Panels(1).Text = "服务器连接状态:响应删除读者。"
              MsgBox StrGet(2), , "服务器响应"      
           '查询读者
           Case "03"
               MDIFrm.StatusBar1.Panels(1).Text = "服务器连接状态:响应查询读者。"
            FrmRdrQuery.ListRdrResult.Clear
            For i = 0 To UBound (StrGet) - 2
                FrmRdrQuery.ListRdrResult.AddItem StrGet (i + 2)
            Next i         
        End Select                
    '图书类型信息
    Case "Type"
        Select Case StrGet(1)
           '添加图书类型
           Case "01"
               MDIFrm.StatusBar1.Panels(1).Text = "服务器连接状态:响应添加图书类型。"
              MsgBox StrGet(2), , "服务器响应"            
           '删除图书类别
           Case "02"
               MDIFrm.StatusBar1.Panels(1).Text = "服务器连接状态:响应删除图书类别。"
              MsgBox StrGet(2), , "服务器响应"          
           '查询图书类型

首页 上一页 2 3 4 5 6 下一页 尾页 5/6/6


以上为本篇毕业论文范文基于cs模式的图书管理系统毕业文档(五)的介绍部分。
本论文在计算机论文栏目,由论文网(www.zjwd.net)整理,更多论文,请点论文范文查找

毕业论文降重 相关论文

收费专业论文范文
收费专业论文
汉语言文学论文
物理学论文
自动化专业论文
测控技术专业论文
历史学专业论文
机械模具专业论文
金融专业论文
电子通信专业论文
材料科学专业论文
英语专业论文
会计专业论文
行政管理专业论文
财务管理专业论文
电子商务国贸专业
法律专业论文
教育技术学专业论文
物流专业论文
人力资源专业论文
生物工程专业论文
市场营销专业论文
土木工程专业论文
化学工程专业论文
文化产业管理论文
工商管理专业论文
护理专业论文
数学教育专业论文
数学与应用数学专业
心理学专业论文
信息管理专业论文
工程管理专业论文
工业工程专业论文
制药工程专业论文
电子机电信息论文
现代教育技术专业
新闻专业论文
艺术设计专业论文
采矿专业论文
环境工程专业论文
西班牙语专业论文
热能与动力设计论文
工程力学专业论文
酒店管理专业论文
安全管理专业论文
交通工程专业论文
体育教育专业论文
教育管理专业论文
日语专业论文
德语专业论文
理工科专业论文
轻化工程专业论文
社会工作专业论文
乡镇企业管理
给水排水专业
服装设计专业论文
电视制片管理专业
旅游管理专业论文
物业管理专业论文
信息管理专业论文
包装工程专业论文
印刷工程专业论文
动画专业论文
环境艺术专业论文
信息计算科学专业
物流专业论文范文
人力资源论文范文
营销专业论文范文
工商管理论文范文
汉语言文学论文范文
法律专业论文范文
教育管理论文范文
小学教育论文范文
学前教育论文范文
财务会计论文范文

电子商务论文范文

上一篇:B/S结构的代理商管理系统的功能实.. 下一篇:数字化管理系统(酒店业)

最新论文

精品推荐

毕业论文排版

热门论文


本站简介 | 联系方式 | 论文改重 | 免费获取 | 论文交换

本站部分论文来自网络,如发现侵犯了您的权益,请联系指出,本站及时确认删除 E-mail:229120615@qq.com

毕业论文范文-论文范文-论文同学网(www.zjwd.net)提供计算机论文毕业论文,毕业论文范文,毕业设计,论文范文,毕业设计格式范文,论文格式范文

Copyright@ 2010-2024 zjwd.net 毕业论文范文-论文范文-论文同学网 版权所有