top
Loading...
用VB設計小型網絡管理系統


摘 要:
本文主要討論基于Internet上的小型網絡信息管理系統的基本功能,并提供了其基于WinSock控件的構造方法。

1 網絡管理系統的功能

用戶登錄認證,電子郵件系統,文件傳送,消息通知

2 Winsock控件介紹

Winsock 控件對用戶來說是不可見的,它提供了訪問 TCP 和 UDP 網絡服務的方便途徑。Microsoft Access、Visual Basic、Visual C++ 或 Visual FoxPro 的開發人員都可使用它。為編寫客戶或服務器應用程序,不必了解 TCP 的細節或調用低級的 Winsock APIs。通過設置控件的屬性并調用其方法就可輕易連接到一臺遠程機器上去,并且還可雙向交換數據。

如果創建客戶應用程序,就必須知道服務器計算機名或者 IP 地址(RemoteHost 屬性),還要知道進行“偵聽”的端口(RemotePort 屬性),然后調用 Connect 方法。如果創建服務器應用程序,就應設置一個收聽端口(LocalPort 屬性)并調用 Listen 方法。當客戶計算機需要連接時就會發生 ConnectionRequest 事件。為了完成連接,可調用 ConnectionRequest 事件內的 Accept 方法。

建立連接后,任何一方計算機都可以收發數據。為了發送數據,可調用 SendData 方法。當接收數據時會發生 DataArrival 事件。調用 DataArrival 事件內的 GetData 方法就可獲取數據。

為實現Internet上兩個遠程計算機之間的數據傳送,Winsock編程是一個十分便捷、快速的選擇。顯然,Winsock通信是基于Client/Server模式的,即服務器的Winsock在某端口進行“偵聽”服務,等待客戶機的申請;那么如何實現兩臺計算機之間對等數據交換?實現中,可以把生成兩個Winsock對象,其中一個作為服務器對象在端口1“偵聽”,另外一個作為客戶機對象在端口2連接另一臺計算機——即每臺計算機可以作為服務器,也可以是客戶端。

VB6.0中,Winsock有兩種數據傳送格式:字符串型和字節流型;平時的信息交互可以使用字符串型,但由于文件的傳送要顧及各種格式的文件,因此文件不能以字符串進行傳送,此時以字節流型數據傳送可以保證數據完整。

方法如下:

⑴如果是傳送字符串型,發送:Winsock1.SendData strData;接收:Winsock1.GetData strData(strData是字符串String型變量)。

⑵如果是傳送字節流型,發送:Winsock1.SendData strData();接收:Winsock1.GetData strData()(strData()是字節數組Dim strData() As BYTE)。

作者:http://www.zhujiangroad.com
來源:http://www.zhujiangroad.com
北斗有巢氏 有巢氏北斗