2023年全國(guó)碩士研究生考試考研英語一試題真題(含答案詳解+作文范文)_第1頁
已閱讀1頁,還剩6頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、<p><b>  計(jì)算機(jī)系統(tǒng)設(shè)計(jì)</b></p><p>  利用VB6 Winsock空間創(chuàng)建TCP—IP客戶機(jī)—服務(wù)器程序</p><p>  功能描述:利用Winsock編寫基于TCP/IP的客戶機(jī)----服務(wù)器程序,實(shí)現(xiàn)網(wǎng)絡(luò)的通信。</p><p>  服務(wù)器程序?qū)崿F(xiàn)的過程:</p><p>  服務(wù)

2、器程序必須設(shè)置好LOCAPORT屬性,作為偵聽端口,該值為一個(gè)整數(shù)。</p><p>  使用LISTEN方法進(jìn)入偵聽狀態(tài),等待客戶機(jī)程序的連接請(qǐng)求。</p><p>  客戶機(jī)程序發(fā)出連接請(qǐng)求,使服務(wù)器程序產(chǎn)生CONNECTIONREQUEST事件,該事件得到一個(gè)參數(shù)REQUESTID。</p><p>  服務(wù)器程序用ACCEPT方法接受客戶機(jī)程序的REQUES

3、TID請(qǐng)求。這樣服務(wù)器程序就可以用SENDDATA方法發(fā)送數(shù)據(jù)了。ACCEPT方法必須用上一步得到的REQUESTID作為其參數(shù)。</p><p>  當(dāng)服務(wù)器程序接收到數(shù)據(jù)時(shí),產(chǎn)生DATAARRIVAL事件,參數(shù)BYTESTOTAL包含接收到是數(shù)據(jù)字節(jié)數(shù)。在該事件中,可以用GETDATA事件方法接收數(shù)據(jù)。</p><p>  如果接收到CLOSE事件,則用CLOSE方法關(guān)閉TCP/IP連

4、接。</p><p>  客戶機(jī)程序的實(shí)現(xiàn)過程:</p><p>  客戶機(jī)程序設(shè)置REMOTEHOST屬性,以便指定運(yùn)行服務(wù)器程序的主機(jī)名,該字符串可在“控制面版|網(wǎng)絡(luò)|標(biāo)識(shí)|計(jì)算機(jī)名”中查到。</p><p>  設(shè)置REMOTEPORT屬性,以便指定服務(wù)器程序的偵聽端口。</p><p>  使用CONNECT方法,向服務(wù)器提出連接請(qǐng)求

5、。</p><p>  服務(wù)器接受客戶機(jī)程序的請(qǐng)求,客戶機(jī)程序產(chǎn)生CONNECT事件,就可以用SENDDATA方法發(fā)送數(shù)據(jù)了。</p><p>  當(dāng)客戶機(jī)程序接收到數(shù)據(jù)時(shí),產(chǎn)生DATAARRIVAL事件,參數(shù)BYTESTOAL包含接收到的數(shù)據(jù)字節(jié)數(shù)。在該事件中,可以用GETDATA方法接收數(shù)據(jù)。</p><p>  如果接收到CLOSE事件,則用CLOSE方法關(guān)閉

6、連接。</p><p><b>  服務(wù)端程序及圖解:</b></p><p>  SERVER端界面圖:</p><p>  * Command2---聊天記錄 Command3---發(fā)送 Command4---退出</p><p><b>  程序:</b></p>&

7、lt;p>  Public IsLong As Boolean</p><p>  --------------------------------------------------------------</p><p>  Private Sub Command2_Click()</p><p>  If IsLong = False Then</

8、p><p>  Form1.Height = 6990</p><p>  IsLong = True</p><p><b>  Else</b></p><p>  Form1.Height = 2900</p><p>  IsLong = False</p><p>&

9、lt;b>  End If</b></p><p><b>  End Sub</b></p><p>  ---------------------------------------------------------------</p><p>  Private Sub Command3_Click()</p&g

10、t;<p>  Dim sendtext As String</p><p>  sendtext = Text2.Text</p><p>  Winsocks.SendData sendtext</p><p>  Dim str As String</p><p>  str = (Now) & " &q

11、uot; & Winsocks.LocalHostName & ":" & (vbNewLine)</p><p>  Text3.Text = Text3.Text + str + sendtext + (vbNewLine)</p><p><b>  End Sub</b></p><p>  

12、---------------------------------------------------------------</p><p>  Private Sub Command4_Click()</p><p>  If MsgBox("您真的要退出嗎???", vbYesNo, "警告!") = vbYes Then</p>

13、<p><b>  End</b></p><p><b>  End If</b></p><p><b>  End Sub</b></p><p>  ---------------------------------------------------------------<

14、/p><p>  Private Sub Form_Load()</p><p>  Winsocks.LocalPort = 1000</p><p>  Winsocks.Listen</p><p>  Text2.Visible = False</p><p>  Text3.Visible = False<

15、/p><p>  Form1.Height = 3000</p><p><b>  End Sub</b></p><p>  ---------------------------------------------------------------</p><p>  Private Sub Text2_Change

16、()</p><p><b>  End Sub</b></p><p>  ---------------------------------------------------------------</p><p>  Private Sub Text3_Change()</p><p><b>  En

17、d Sub</b></p><p>  ---------------------------------------------------------------</p><p>  Private Sub Winsocks_ConnectionRequest(ByVal requestID As Long)</p><p>  If Winsock

18、s.State <> sckClosed Then Winsocks.Close</p><p>  Winsocks.Accept (requestID)</p><p>  Text2.Visible = True</p><p>  Text3.Visible = True</p><p><b>  End Su

19、b</b></p><p>  ---------------------------------------------------------------</p><p>  Private Sub Winsocks_DataArrival(ByVal bytesTotal As Long)</p><p>  Dim gettext As Stri

20、ng</p><p>  Winsocks.GetData gettext</p><p>  Dim str As String</p><p>  str = (Now) & " " & Winsocks.RemoteHost & ":" & (vbNewLine)</p>&

21、lt;p>  Text3.Text = Text3.Text + str + gettext + (vbNewLine)</p><p><b>  End Sub</b></p><p><b>  退出程序端界面圖:</b></p><p>  * Command1---連接 Command2---聊天記錄

22、 Command3---發(fā)送 Command4---退出</p><p><b>  程序:</b></p><p>  Public IsLong As Boolean</p><p>  ---------------------------------------------------------</p><p

23、>  Private Sub Command1_Click()</p><p>  WinsockC.Connect</p><p><b>  End Sub</b></p><p>  ---------------------------------------------------------</p><p&

24、gt;  Private Sub Command2_Click()</p><p>  If IsLong = False Then</p><p>  Form1.Height = 7590</p><p>  IsLong = True</p><p><b>  Else</b></p><p&

25、gt;  Form1.Height = 3550</p><p>  IsLong = False</p><p><b>  End If</b></p><p><b>  End Sub</b></p><p>  ---------------------------------------

26、------------------</p><p>  Private Sub Command3_Click()</p><p>  Dim sendtext As String</p><p>  sendtext = Text2.Text</p><p>  WinsockC.SendData sendtext</p>&

27、lt;p>  Dim str As String</p><p>  str = (Now) & " " & WinsockC.LocalHostName & ":" & (vbNewLine)</p><p>  Text3.Text = Text3.Text + str + sendtext + (vbNew

28、Line)</p><p><b>  End Sub</b></p><p>  ---------------------------------------------------------</p><p>  Private Sub Command4_Click()</p><p>  If MsgBox(&q

29、uot;您真的要退出嗎!?", vbYesNo, "警告!") = vbYes Then</p><p><b>  End</b></p><p><b>  End If</b></p><p><b>  End Sub</b></p><p&g

30、t;  ---------------------------------------------------------</p><p>  Private Sub Form_Load()</p><p>  WinsockC.RemotePort = 1000</p><p>  Text3.Visible = False</p><p>

31、;  Text2.Visible = False</p><p>  IsLong = False</p><p>  Form1.Height = 3550</p><p><b>  End Sub</b></p><p>  ---------------------------------------------

32、------------</p><p>  Private Sub Text1_Change()</p><p>  WinsockC.RemoteHost = Text1.Text</p><p><b>  End Sub</b></p><p>  --------------------------------

33、-------------------------</p><p>  Private Sub WinsockC_Connect()</p><p>  MsgBox ("和服務(wù)器已經(jīng)連接成功!")</p><p>  Text3.Visible = True</p><p>  Text2.Visible = True&

34、lt;/p><p><b>  End Sub</b></p><p>  ---------------------------------------------------------</p><p>  Private Sub WinsockC_DataArrival(ByVal bytesTotal As Long)</p>

35、<p>  Dim gettext As String</p><p>  WinsockC.GetData gettext</p><p>  Dim str As String</p><p>  str = (Now) & " " & WinsockC.RemoteHost & ":"

36、 & (vbNewLine)</p><p>  Text3.Text = Text3.Text + str + gettext + (vbNewLine)</p><p><b>  End Sub</b></p><p>  ------------------------------------------------------

37、---</p><p>  Private Sub WinsockC_Error(ByVal Number As Integer, Description As String, ByVal Scode As Long, ByVal Source As String, ByVal HelpFile As String, ByVal HelpContext As Long, CancelDisplay As Bool

38、ean)</p><p>  MsgBox ("服務(wù)器沒有響應(yīng)!被迫退出程序")</p><p><b>  End</b></p><p><b>  End Sub</b></p><p><b>  連接服務(wù)器:</b></p><

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 眾賞文庫(kù)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論