999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

局域網(wǎng)信息發(fā)布程序的設(shè)計(jì)與實(shí)現(xiàn)

2012-07-17 10:50:34趙曉鳳
通信電源技術(shù) 2012年5期
關(guān)鍵詞:信息

趙曉鳳

(蘇州工業(yè)園區(qū)工業(yè)技術(shù)學(xué)校,江蘇 蘇州215123)

在局域網(wǎng)中發(fā)布信息可以不依賴(lài)基于因特網(wǎng)開(kāi)發(fā)的信息發(fā)布交流工具,這種方式很好地解決了因外網(wǎng)不穩(wěn)定而造成信息中斷的問(wèn)題,而且有很強(qiáng)的保密性,適合企事業(yè)單位使用。本文就如何設(shè)計(jì)開(kāi)發(fā)局域網(wǎng)信息發(fā)布系統(tǒng)進(jìn)行了有效的嘗試。

1 開(kāi)發(fā)流程圖

局域網(wǎng)信息發(fā)布系統(tǒng)開(kāi)發(fā)流程如圖1所示。

圖1 局域網(wǎng)信息發(fā)布系統(tǒng)開(kāi)發(fā)流程

2 局域網(wǎng)信息發(fā)布系統(tǒng)設(shè)計(jì)原理

2.1 網(wǎng)絡(luò)傳輸所需協(xié)議

傳輸協(xié)議有很多種,本文開(kāi)發(fā)局域網(wǎng)信息發(fā)布系統(tǒng)主要應(yīng)用TCP協(xié)議,通過(guò)TCP協(xié)議把本地計(jì)算機(jī)和遠(yuǎn)程計(jì)算機(jī)進(jìn)行連接。TCP協(xié)議要求必須先建立連接,然后才被允許數(shù)據(jù)傳輸。能被利用開(kāi)發(fā)局域網(wǎng)信息發(fā)布系統(tǒng)的協(xié)議還有UDP協(xié)議。UDP協(xié)議的特點(diǎn)是在傳輸數(shù)據(jù)前,不進(jìn)行連接請(qǐng)求而直接發(fā)送,在傳輸信息上來(lái)看這樣做很不可靠。

2.2 Winsock控件

要實(shí)現(xiàn)局域網(wǎng)通信,VB中提供了一種方便易行的方法,那就是Winsock控件。這樣設(shè)計(jì)者就可以不必了解數(shù)據(jù)傳輸細(xì)節(jié),非常容易地進(jìn)行程序設(shè)計(jì)。

VB中Winsock控件能使用兩種協(xié)議:TCP協(xié)議及UDP協(xié)議。TCP協(xié)議能保證傳輸數(shù)據(jù)安全到達(dá)目的地,而UDP協(xié)議只是將數(shù)據(jù)傳送到網(wǎng)絡(luò)上,不檢查數(shù)據(jù)是否到達(dá)目的地,因此要進(jìn)行安全通信控制和實(shí)時(shí)會(huì)話(huà)最好采用TCP協(xié)議。

Winsock控件有很多的屬性、方法及事件,以下是設(shè)計(jì)時(shí)可能會(huì)常使用的幾種屬性、方法和事件。

(1)屬性

Index:控件索引值

LocalHostName:本機(jī)名

LocalIP:本機(jī)IP

LocalPort:通信端口

Name:實(shí)例名

Protocol:所用協(xié)議,主要指TCP和UDP

RemoteHost:服務(wù)器名

RemoteHostIP:服務(wù)器ip

RemotePort:服務(wù)器偵聽(tīng)端口

State:控件連接狀態(tài),即連接與未連接

(2)方法

Accept():接受連接請(qǐng)求

Close():關(guān)閉該連接

Connect():請(qǐng)求與遠(yuǎn)程計(jì)算機(jī)連接

GetData():從接收緩沖區(qū)讀取數(shù)據(jù)

Listen():偵聽(tīng)連接請(qǐng)求

SendData():發(fā)送數(shù)據(jù)

(3)事件

Close():關(guān)閉連接時(shí)發(fā)生

Connect():建立連接時(shí)發(fā)生

ConnectionRequest():客戶(hù)端請(qǐng)求與服務(wù)器程序連接時(shí)發(fā)生

DataArrival():數(shù)據(jù)到達(dá)時(shí)發(fā)生Error():發(fā)生錯(cuò)誤時(shí)發(fā)生

2.3 設(shè)計(jì)思路

遠(yuǎn)程計(jì)算機(jī)的連接原理:TCP協(xié)議要求必須使用服務(wù)器才能建立連接、通信,加上需要分別開(kāi)發(fā)客戶(hù)端程序和服務(wù)器端程序。

2.3.1 設(shè)計(jì)客戶(hù)端程序需要明確項(xiàng)

(1)服務(wù)器計(jì)算機(jī)的名稱(chēng)以及Ip地址,利用RemoteHost屬性調(diào)用。

(2)服務(wù)器計(jì)算機(jī)的通信端口,利用RemotePort屬性調(diào)用。

(4)服務(wù)器建立連接后,進(jìn)行數(shù)據(jù)的傳送和捕捉,利用事件DataArrival和方法SendData與GetData。

2.3.2 服務(wù)器端程序的主體

(1)設(shè)置服務(wù)器的通信端口。

(2)調(diào)用偵聽(tīng),捕捉客戶(hù)機(jī)的請(qǐng)求,利用Listen方法。

(3)接到連接請(qǐng)求后,建立連接,利用Accept方法。

(4)服務(wù)器建立連接后,進(jìn)行數(shù)據(jù)的捕捉和傳送,利用事件DataArrival和方法SendData與GetData。

3 局域網(wǎng)信息發(fā)布系統(tǒng)實(shí)現(xiàn)方法

3.1 服務(wù)器端設(shè)置

首先設(shè)置其IP地址為:10.72.83.1,在防火墻-設(shè)置本地端口localPort設(shè)為1200(使用不常用的端口,否則會(huì)發(fā)生沖突),在服務(wù)器端程序加入一個(gè)winsock控件,名稱(chēng)為changgongserver(0),這樣就可以在運(yùn)行時(shí)動(dòng)態(tài)地增減控件,便于與多個(gè)計(jì)算機(jī)進(jìn)行對(duì)話(huà)。在主窗體Load事件中的代碼如下。

changgongserver(0).bind

changgongserver(0).LocalPort

阿什哈達(dá)摩崖石刻始刊于清德宗光緒十七年(1891)吉林將軍長(zhǎng)順監(jiān)修的《吉林通志·金石志》卷120,但文字著錄錯(cuò)誤較多,不足為研究的依據(jù)。其后陸續(xù)有人親赴現(xiàn)地進(jìn)行調(diào)查和墨拓,他們所著錄的文字,雖然基本已趨于一致,但個(gè)別地方仍略有不同。因此,1957年5月,吉林省博物館派人實(shí)地調(diào)查,并作了記錄、照相和墨拓。1972年,吉林省博物館又做了一次調(diào)查核對(duì)。

‘用于綁定端口號(hào)或者在Winsock

控件屬性中設(shè)置也可以

‘偵聽(tīng)客戶(hù)機(jī)的請(qǐng)求

changgongserver(0).listern

3.2 通信實(shí)現(xiàn)過(guò)程

3.2.1 建立連接

在客戶(hù)端程序中,添加 Winsock控件,方法是在工具欄中右擊部件,查找到對(duì)應(yīng)部件選中確認(rèn)即可。在Winsock控件的屬性窗口中RemoteHostIP(即服務(wù)器IP)為”10.72.83.1”,RemotePort(即服務(wù)器偵聽(tīng)客戶(hù)機(jī)請(qǐng)求的端口)=1200。

為了傳輸信息,必須建立通信連接,客戶(hù)端必須要發(fā)出請(qǐng)求,實(shí)現(xiàn)代碼為:changgongconnect.connect changgongconnect.RemoteHost,changgongconnect.RemotePort,服務(wù)器接收到請(qǐng)求后,通過(guò) ConnectRequest事件調(diào)用連接,具體代碼實(shí)現(xiàn)如下:

Private sub changgongserver_connectrequest(Index as Integer,Byval requestid as long)

dim simple as string//用于存儲(chǔ)客戶(hù)端IP

dim I as integer//

On Error GoTo ErrHandle

simple=changgongserver(0).RemoteHostIP//獲得登錄者地址信息

X=1

Do while X<=changgongserver.ubound//檢查該地址是否已存在

If changgongserver(X).RemoteHostIP=simple then//如果存在的話(huà)就不必加載新的控件

Changgongserver(X).Accept requested

Exit sub

End If

X=X+l

loop

load changgongserver(X)//加載新的控件

changgongserver(X).a(chǎn)ccept requested

End sub

3.2.2 客戶(hù)端傳送實(shí)現(xiàn)

首先設(shè)置在客戶(hù)端窗體程序中加入主體控件,主要有兩個(gè):commond控件“send”和文本框控件。文本框控件的name屬性設(shè)為txt_info,即為需要傳送的信息或數(shù)據(jù)。

在 “send”控件代碼窗口中加入如下代碼:

dim userinfo as string

userinfo=txt_info.text

sckconnect.SendData userinfo

3.2.3 服務(wù)器端數(shù)據(jù)的接收

連接建立后,服務(wù)器端捕獲到客戶(hù)端發(fā)出的信息后,通過(guò)DataArrival事件調(diào)用GetData方法完成數(shù)據(jù)的接收工作,服務(wù)器端DataArrival事件代碼窗口中加入以下代碼:

Private sub changgongserver_DataArrival(Index as integer,Byval BytesTotal as long)

dim clientdata as string

‘定義字符串變量,用于接收數(shù)據(jù)

changgongserver(1).GetData clientdata,vbstring

‘服務(wù)器捕獲客戶(hù)端發(fā)出的信息,并‘把信息存入到clientdata變量中

end sub

為了讓每個(gè)用戶(hù)都可以收到,還要在服務(wù)端WINsock控件中的DataArrival事件中加入數(shù)據(jù)的轉(zhuǎn)發(fā)語(yǔ)句,傳送給已經(jīng)與主機(jī)建立連接的所有客戶(hù)端,實(shí)現(xiàn)代碼如下:

For info=l to changgongserver.Count Step 1

if changgongserver(X).state=changgongClosed then‘檢測(cè)連接狀態(tài)

Else

Changgongserver(X).SendData client data ‘轉(zhuǎn)發(fā)數(shù)據(jù)

End If

next info

3.2.4 客戶(hù)端程序接收數(shù)據(jù)

在數(shù)據(jù)到達(dá)客戶(hù)端后,同時(shí)觸發(fā)客戶(hù)端的Data-Arrival事件,在該事件中仍然調(diào)用GetData方法對(duì)數(shù)據(jù)進(jìn)行接收工作:

Private sub changgongserver_DataArrival(Index as integer,Byval BytesTotal as long)

dim serverdata as string定義變量,用于接收

changgongserver(1).GetData serverdata,vbstring‘存在變量中

end sub

3.2.5 程序的關(guān)閉

在關(guān)閉應(yīng)用程序前,先要關(guān)閉連接,在窗體unload事件中加入如下代碼:

Private sub myform_unload(cancel as integer)

if changgongconnect.state<>0then

changgongconnect.Close()

end if

end sub

4 結(jié)束語(yǔ)

本程序僅僅利用了vb語(yǔ)言中Winsock控件的強(qiáng)大功能中的一部分,即調(diào)用TCP協(xié)議實(shí)現(xiàn)局域網(wǎng)的相互通信。要實(shí)現(xiàn)功能更強(qiáng)、更完備的通信系統(tǒng),獲得良好的兼容性與容錯(cuò)性,還需要深入地研究。

猜你喜歡
信息
訂閱信息
中華手工(2017年2期)2017-06-06 23:00:31
展會(huì)信息
信息超市
展會(huì)信息
展會(huì)信息
展會(huì)信息
展會(huì)信息
展會(huì)信息
信息
健康信息
祝您健康(1987年3期)1987-12-30 09:52:32
主站蜘蛛池模板: 国产精品手机在线观看你懂的 | 青青久久91| 97视频精品全国在线观看| 亚洲乱码在线播放| 亚洲AV色香蕉一区二区| 97在线免费视频| 久久久91人妻无码精品蜜桃HD| 美女扒开下面流白浆在线试听| 亚洲视频三级| 午夜国产小视频| 高清亚洲欧美在线看| 亚洲成人播放| 中文字幕中文字字幕码一二区| 国产成人毛片| 五月天久久婷婷| 日韩欧美国产三级| 91在线精品免费免费播放| 久久婷婷国产综合尤物精品| 国产99免费视频| 久久久久久尹人网香蕉| 午夜精品影院| 久久这里只有精品国产99| 4虎影视国产在线观看精品| 久久99国产综合精品女同| 国产一区成人| 性色一区| 嫩草在线视频| 国产欧美日韩精品第二区| 2048国产精品原创综合在线| 在线欧美国产| 99偷拍视频精品一区二区| 欧美午夜一区| 亚洲欧美国产五月天综合| 青青青国产免费线在| 欧美色图第一页| 9cao视频精品| 国产精品一线天| 丁香五月激情图片| 亚洲第一香蕉视频| 一级成人欧美一区在线观看| 精品一区二区三区视频免费观看| 欧美日韩导航| 青草国产在线视频| 又爽又黄又无遮挡网站| 美女扒开下面流白浆在线试听| 欧美中文字幕一区| 日韩欧美一区在线观看| 日韩国产综合精选| 亚洲无码视频图片| 999精品色在线观看| 亚洲91在线精品| 高清不卡一区二区三区香蕉| 九九香蕉视频| 国产一区二区精品福利| 欧美午夜在线视频| JIZZ亚洲国产| 国产性爱网站| 激情视频综合网| 亚洲天堂网在线视频| 不卡网亚洲无码| 99激情网| 午夜影院a级片| 国产成人精品男人的天堂| 青青国产视频| 亚洲水蜜桃久久综合网站| 99精品免费欧美成人小视频| 成人蜜桃网| 国产白浆一区二区三区视频在线| 亚洲欧美日韩视频一区| 91香蕉视频下载网站| jizz在线免费播放| 91精品国产综合久久不国产大片| 在线国产欧美| 婷婷丁香色| 韩日免费小视频| 久久久噜噜噜久久中文字幕色伊伊 | 日韩AV无码免费一二三区| 欧美视频在线观看第一页| 国产精品人成在线播放| 亚洲无码电影| 综合色亚洲| 亚洲第一综合天堂另类专|