应用VB开发环境和Winsock控件,编制简单的点对点聊天程序。通过练习4,使学生能了解VB网络编程的基础。本实验要求一个同学在仿真编辑器上,另一个同学在协议分析器上,同时编程实现双机通信。
步骤如下:
步骤如下:
- 启动VB开发环境,新建标准EXE文件,工程1--Form1;
- 添加WINSOCK控件,方法是:工程->部件,选择Microsoft Winsock contorl 6.0,按确定工具箱里会增加一个计算机网络的图标
- 将Winsock图标添加到FORM1中,另外添加两个text,text1是接收窗口,text2是发送窗口。添加两个command按钮。
- 修改command1的caption属性为send, 修改command2的caption属性为clear,修改winsock的LocalPort=2000,RemoteHost=对方的IP地址,RemotePort=2000,修改protocol属性为1-sckUDPProtocol。
- 对方计算机同样作以上内容,不同的是RemoteHost IP地址;
- 双击send,在Private Sub Command1_Click()和End Sub之间填写下列代码:Winsock1.SendData Text2.Text;
- 双击clear,在Private Sub Command2_Click()和End Sub之间填写下列代码:
Text1.Text = ""
Text2.Text = "" - 双击form1窗体,在Private Sub Form_Load()和End Sub之间填写下列代码: Winsock1.Bind 2000
- 双击form1窗体,进入代码窗体,在左上角的控件表中选择winsock1,在右上角的子程序中选择DataArrival,在代码窗体中会生成一个子程序:Private Sub Winsock1_DataArrival(ByVal bytesTotal As Long),在这个子程序中添加以下代码:
Dim sss As String
Winsock1.GetData sss
Text1.Text = sss - 点击工具栏上的三角号,运行form1,两个计算机之间就可以聊天了!
- 双方在text2文本框中随便输入什么会在对方的text1文本框中出现。
- 对方程序未运行时,发送数据会成功吗?为什么?
- 在协议分析器端截获数据包,分析结果。