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

局域網信息發布程序的設計與實現

2012-07-17 10:50:34趙曉鳳
通信電源技術 2012年5期
關鍵詞:信息

趙曉鳳

(蘇州工業園區工業技術學校,江蘇 蘇州215123)

在局域網中發布信息可以不依賴基于因特網開發的信息發布交流工具,這種方式很好地解決了因外網不穩定而造成信息中斷的問題,而且有很強的保密性,適合企事業單位使用。本文就如何設計開發局域網信息發布系統進行了有效的嘗試。

1 開發流程圖

局域網信息發布系統開發流程如圖1所示。

圖1 局域網信息發布系統開發流程

2 局域網信息發布系統設計原理

2.1 網絡傳輸所需協議

傳輸協議有很多種,本文開發局域網信息發布系統主要應用TCP協議,通過TCP協議把本地計算機和遠程計算機進行連接。TCP協議要求必須先建立連接,然后才被允許數據傳輸。能被利用開發局域網信息發布系統的協議還有UDP協議。UDP協議的特點是在傳輸數據前,不進行連接請求而直接發送,在傳輸信息上來看這樣做很不可靠。

2.2 Winsock控件

要實現局域網通信,VB中提供了一種方便易行的方法,那就是Winsock控件。這樣設計者就可以不必了解數據傳輸細節,非常容易地進行程序設計。

VB中Winsock控件能使用兩種協議:TCP協議及UDP協議。TCP協議能保證傳輸數據安全到達目的地,而UDP協議只是將數據傳送到網絡上,不檢查數據是否到達目的地,因此要進行安全通信控制和實時會話最好采用TCP協議。

Winsock控件有很多的屬性、方法及事件,以下是設計時可能會常使用的幾種屬性、方法和事件。

(1)屬性

Index:控件索引值

LocalHostName:本機名

LocalIP:本機IP

LocalPort:通信端口

Name:實例名

Protocol:所用協議,主要指TCP和UDP

RemoteHost:服務器名

RemoteHostIP:服務器ip

RemotePort:服務器偵聽端口

State:控件連接狀態,即連接與未連接

(2)方法

Accept():接受連接請求

Close():關閉該連接

Connect():請求與遠程計算機連接

GetData():從接收緩沖區讀取數據

Listen():偵聽連接請求

SendData():發送數據

(3)事件

Close():關閉連接時發生

Connect():建立連接時發生

ConnectionRequest():客戶端請求與服務器程序連接時發生

DataArrival():數據到達時發生Error():發生錯誤時發生

2.3 設計思路

遠程計算機的連接原理:TCP協議要求必須使用服務器才能建立連接、通信,加上需要分別開發客戶端程序和服務器端程序。

2.3.1 設計客戶端程序需要明確項

(1)服務器計算機的名稱以及Ip地址,利用RemoteHost屬性調用。

(2)服務器計算機的通信端口,利用RemotePort屬性調用。

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

2.3.2 服務器端程序的主體

(1)設置服務器的通信端口。

(2)調用偵聽,捕捉客戶機的請求,利用Listen方法。

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

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

3 局域網信息發布系統實現方法

3.1 服務器端設置

首先設置其IP地址為:10.72.83.1,在防火墻-設置本地端口localPort設為1200(使用不常用的端口,否則會發生沖突),在服務器端程序加入一個winsock控件,名稱為changgongserver(0),這樣就可以在運行時動態地增減控件,便于與多個計算機進行對話。在主窗體Load事件中的代碼如下。

changgongserver(0).bind

changgongserver(0).LocalPort

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

‘用于綁定端口號或者在Winsock

控件屬性中設置也可以

‘偵聽客戶機的請求

changgongserver(0).listern

3.2 通信實現過程

3.2.1 建立連接

在客戶端程序中,添加 Winsock控件,方法是在工具欄中右擊部件,查找到對應部件選中確認即可。在Winsock控件的屬性窗口中RemoteHostIP(即服務器IP)為”10.72.83.1”,RemotePort(即服務器偵聽客戶機請求的端口)=1200。

為了傳輸信息,必須建立通信連接,客戶端必須要發出請求,實現代碼為:changgongconnect.connect changgongconnect.RemoteHost,changgongconnect.RemotePort,服務器接收到請求后,通過 ConnectRequest事件調用連接,具體代碼實現如下:

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

dim simple as string//用于存儲客戶端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//如果存在的話就不必加載新的控件

Changgongserver(X).Accept requested

Exit sub

End If

X=X+l

loop

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

changgongserver(X).accept requested

End sub

3.2.2 客戶端傳送實現

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

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

dim userinfo as string

userinfo=txt_info.text

sckconnect.SendData userinfo

3.2.3 服務器端數據的接收

連接建立后,服務器端捕獲到客戶端發出的信息后,通過DataArrival事件調用GetData方法完成數據的接收工作,服務器端DataArrival事件代碼窗口中加入以下代碼:

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

dim clientdata as string

‘定義字符串變量,用于接收數據

changgongserver(1).GetData clientdata,vbstring

‘服務器捕獲客戶端發出的信息,并‘把信息存入到clientdata變量中

end sub

為了讓每個用戶都可以收到,還要在服務端WINsock控件中的DataArrival事件中加入數據的轉發語句,傳送給已經與主機建立連接的所有客戶端,實現代碼如下:

For info=l to changgongserver.Count Step 1

if changgongserver(X).state=changgongClosed then‘檢測連接狀態

Else

Changgongserver(X).SendData client data ‘轉發數據

End If

next info

3.2.4 客戶端程序接收數據

在數據到達客戶端后,同時觸發客戶端的Data-Arrival事件,在該事件中仍然調用GetData方法對數據進行接收工作:

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 程序的關閉

在關閉應用程序前,先要關閉連接,在窗體unload事件中加入如下代碼:

Private sub myform_unload(cancel as integer)

if changgongconnect.state<>0then

changgongconnect.Close()

end if

end sub

4 結束語

本程序僅僅利用了vb語言中Winsock控件的強大功能中的一部分,即調用TCP協議實現局域網的相互通信。要實現功能更強、更完備的通信系統,獲得良好的兼容性與容錯性,還需要深入地研究。

猜你喜歡
信息
訂閱信息
中華手工(2017年2期)2017-06-06 23:00:31
展會信息
中外會展(2014年4期)2014-11-27 07:46:46
信息超市
大眾創業(2009年10期)2009-10-08 04:52:00
展會信息
展會信息
展會信息
展會信息
展會信息
信息
建筑創作(2001年3期)2001-08-22 18:48:14
健康信息
祝您健康(1987年3期)1987-12-30 09:52:32
主站蜘蛛池模板: 91破解版在线亚洲| 成人综合在线观看| 国产精品观看视频免费完整版| 国产呦精品一区二区三区网站| 免费看黄片一区二区三区| 国产SUV精品一区二区| 热思思久久免费视频| 人人爱天天做夜夜爽| 婷婷六月综合网| 四虎成人免费毛片| av色爱 天堂网| 亚洲久悠悠色悠在线播放| 国产精品视频观看裸模| 欧美午夜小视频| 亚洲国产成人自拍| 最新无码专区超级碰碰碰| 免费人成黄页在线观看国产| 国产在线啪| 日本高清成本人视频一区| 精品91视频| 少妇被粗大的猛烈进出免费视频| 又污又黄又无遮挡网站| 97国产在线视频| 丁香婷婷激情网| 国产亚洲精品自在线| 国产精品成人AⅤ在线一二三四| 少妇精品久久久一区二区三区| 久久精品无码专区免费| 五月综合色婷婷| 免费jizz在线播放| 国产第三区| 色香蕉网站| 精品国产网站| 成人在线不卡视频| 国产精品欧美激情| 日韩黄色在线| 萌白酱国产一区二区| 精品国产99久久| 一级毛片免费观看久| 777午夜精品电影免费看| 无码网站免费观看| 制服丝袜在线视频香蕉| 日韩成人免费网站| 亚洲日本在线免费观看| 久久综合丝袜长腿丝袜| 蜜桃视频一区二区| 欧美日韩中文国产va另类| 欧美日本在线观看| 免费在线不卡视频| 在线免费观看AV| 国产丝袜无码一区二区视频| 美女一区二区在线观看| 手机精品福利在线观看| 亚洲无码高清视频在线观看| 亚卅精品无码久久毛片乌克兰| 欧洲在线免费视频| 国产自视频| 国产午夜福利片在线观看| 国产在线精品人成导航| 人妻夜夜爽天天爽| 亚洲h视频在线| 女人18毛片水真多国产| 国产00高中生在线播放| 中国精品自拍| 欧美成人免费| 欧美成人在线免费| 综合天天色| 人与鲁专区| 69av在线| 亚洲欧洲日韩综合色天使| 亚洲综合婷婷激情| 91福利免费视频| 精品无码一区二区三区电影| 国产熟睡乱子伦视频网站| 自拍亚洲欧美精品| 毛片在线播放a| 国产成人高清在线精品| 五月天久久婷婷| 国产在线麻豆波多野结衣| 国产成人精品一区二区免费看京| 国产三区二区| 久久精品这里只有国产中文精品|