Je bent nu offline; er wordt gewacht tot er weer een internetverbinding is

ACC2000: Twee voorbeelden die het ActiveX-besturingselement Winsock gebruiken

BELANGRIJK: Dit artikel is vertaald door middel van automatische vertalingssoftware van Microsoft en is mogelijk nabewerkt door de Microsoft Community via CTF-technologie (Community Translation Framework) of door een menselijke vertaler. Microsoft biedt zowel automatisch vertaalde, door mensen vertaalde en door de community nabewerkte artikelen aan, zodat er in meerdere talen toegang is tot alle artikelen in onze Knowledge Base. Een vertaald of bewerkt artikel kan fouten bevatten in vocabulaire, syntaxis of grammatica.. Microsoft is niet verantwoordelijk voor eventuele onjuistheden, fouten of schade ten gevolge van een foute vertaling van de inhoud van een bericht of het gebruik van deze vertaalde berichten door onze klanten.

De Engelstalige versie van dit artikel is de volgende: 209905
Dit artikel is gearchiveerd. Het wordt aangeboden in de huidige vorm en wordt niet meer bijgewerkt.
Geavanceerd: Expert codering, interoperabiliteit en meerdere gebruikers vaardigheden vereist.

Dit artikel geldt alleen voor Microsoft Access-database (. mdb).

Samenvatting
Dit artikel bevat twee voorbeelden van het gebruik van de Winsock-ActiveXbesturings element met de programma's Microsoft Office 2000 Developer Edition geïnstalleerd.
Meer informatie
De Winsock-besturingselement kunt u verbinding maken met een externe computer engegevens uitwisselen tussen client en server computers. Winsockbesturings element ondersteunt twee protocollen: TCP (Trans mission Control Protocol)en User Datagram Protocol (UDP).

TCP is een protocol op basis van een verbinding. Een gemeenschappelijke analogie voor het beschrijven van TCPis die van een telefoon. In deze analogie bellers moeten stellen eenverbinding aan beide uiteinden van de telefoon lijn voordat ze kunnen worden uitgewisseldinformatie. Een computer met TCP moet bevestiging ontvangt van de ontvang ende computer die een verbinding is gemaakt voordat de twee computers gegevens kunnen overbrengen.

UDP is een verbindingsloos protocol. Een gemeenschappelijke analogie voor het beschrijven van UDP isdie van een radio. In deze analogie zendt een radiostation zijn signaal zonder te weten zeker als iedereen luistert. Een computer metUDP-gegevens worden verzonden en hoeft niet een verbinding met de computer op deeinde van de overdracht ontvangen.

Voorbeeld 1 - het ActiveX-besturingselement Winsock met TCP

In dit voorbeeld wordt dezelfde computer verzenden en ontvangen van gegevens. UMaak een formulier met drie besturings elementen voor Winsock. Een van de besturings elementen worden geëmuleerdde client computer omgeving voor het verzenden van een verbindingsaanvraag aan eenserver. De andere twee besturings elementen emuleren de omgeving op een servercomputer: een besturings element voor een verbindingsaanvraag en de andere luisterthet verzoek accepteert als het gaat.
  1. Maak een nieuwe lege data base met de naam WinsockDemo.mdb.
  2. Maak het volgende nieuwe formulier (niet gebaseerd op een tabel of query) in de ontwerpweergave:
       Form: TCPForm   ---------------------------------   Caption: TCP Form   Command button:      Name: cmdListen      Caption: Listen   Command button:      Name: cmdConnect      Caption: Establish Connection   Command button:      Name: cmdSend      Caption: Send Data   Command button:      Name: cmdRespond      Caption: Respond   Command button:      Name: cmdClose      Caption: Close Connection   Text box:      Name: Text1      Label Caption: Data Received:   Winsock control:      Name: axWinsockListen   Winsock control:      Name: axWinsockClient   Winsock control:      Name: axWinsockServer					
  3. Op deWeergavemenu, klikt u opCode.
  4. Typ de volgende regel in de declaratie sectie van het formulier klassemodule:
    Dim wsListen, wsClient, wsServer As Winsock					
  5. Typ de volgende procedures.

    Optimaal illustreren hoe het besturings element Winsock tussen client en server werkt, worden de procedures vermeld in de volg orde waarin ze plaats vinden.
    Private Sub Form_Load()   ' Set one server Winsock control and the client Winsock control   ' when the form loads.   Set wsListen = Me!axWinsockListen.Object   Set wsClient = Me!axWinsockClient.Object   ' Set the protocol for each control.   wsListen.Protocol = sckTCPProtocol   wsClient.Protocol = sckTCPProtocol   ' Set the remote host on the client Winsock control. Because   ' client and server are the same computer in this example, set   ' RemoteHost equal to LocalIP.   wsClient.RemoteHost = wsListen.LocalIP   ' Set a local and a remote port for the client.   wsClient.RemotePort = 100   wsClient.LocalPort = 99   ' Set a local and a remote port for the server. Note that the   ' server RemotePort is the client LocalPort and vice versa.   wsListen.LocalPort = 100   wsListen.RemotePort = 99End SubPrivate Sub cmdListen_Click()   ' Start the server listening for a connection request.   wsListen.Listen   Msgbox "Server is waiting for a connection request."End SubPrivate Sub cmdConnect_Click()   ' The client requests a connection with the server.   Msgbox "Client requested connection with server."   wsClient.ConnectEnd SubPrivate Sub axWinsockListen_ConnectionRequest(ByVal requestID As _   Long)   ' When the server receives a connection request, set the second   ' Winsock on the server to accept the request.   Set wsServer = Me!axWinsockServer.Object   wsServer.Protocol = sckTCPProtocol   ' Accept the connection request.   wsServer.Accept requestID   Msgbox "Server accepted client connection request."End SubPrivate Sub axWinsockClient_Connect()   ' When the server accepts the connection request, the Connect   ' event fires on the client. Display a message indicating success.   MsgBox "Connection Successful!"End SubPrivate Sub cmdSend_Click()   ' After a connection is established, use a command button to send   ' data from client to server.   wsClient.SendData "Hello"End SubPrivate Sub axWinsockServer_DataArrival(ByVal bytesTotal As Long)   Dim strClientMsg As String   ' The DataArrival event fires on the server when the client sends   ' information. Get the data and display it in a text box.   wsServer.GetData strClientMsg, vbString   Me!Text1.Value = strClientMsgEnd SubPrivate Sub cmdRespond_Click()   ' Send a message from the server to the client.   wsServer.SendData "Thanks for the message!"End SubPrivate Sub axWinsockClient_DataArrival(ByVal bytesTotal As Long)   Dim strServerMsg As String   ' The DataArrival event fires on the client when the server sends   ' information. Get the data and display it in a text box.   wsClient.GetData strServerMsg   Me!Text1.Value = strServerMsgEnd SubPrivate Sub cmdClose_Click()   ' Close the server connections   wsServer.Close   wsListen.Close   Msgbox "Server connections closed."End SubPrivate Sub axWinsockClient_Close()   ' Close event on client fires after server closes connection.   ' Close the client connection and display a message box.   wsClient.Close   MsgBox "Client connections closed. Good-Bye!"End Sub					
  6. Opslaan en sluiten TCPForm.
  7. TCPForm in de formulier weergave openen en de volgende taken uitvoeren:
    1. Klik op deLuisterenom te beginnen met de server in het luisteren naar een verbindingsaanvraag.

      Opmerking in het bericht vak dat verschijnt om aan te geven dat de server wacht op een verbinding.
    2. Klik op deVerbinding makenknop.

      Let op het bericht van de client te controleren dat de verbinding voltooid is en het bericht van de server verifiëren dat de aanvraag is geaccepteerd.
    3. Klik op deGegevens verzendenknop en let op de client "Hallo" verschijnt in het tekstvak op het formulier.
    4. Klik op deReagerenknop, en dat de server bericht 'Hartelijk dank voor het bericht!' wordt weer gegeven in het vak Opmerking.
    5. Klik op deVerbinding sluitenknop en Opmerking de bericht vakken uit zowel de client als de server die aangeeft dat de verbindingen hebben gesloten.

Voorbeeld 2 - gebruik van het ActiveX-besturingselement Winsock met UDP

In dit voorbeeld wordt dezelfde computer verzenden en ontvangen van gegevens. Ueen formulier maken met twee besturings elementen Winsock: een van de besturings elementen emuleert deemuleert de server clientcomputer en het andere besturings element.
  1. Maak een nieuwe lege data base met de naam WinsockDemo.mdb of de data base die u hebt gemaakt in het vorige voorbeeld.
  2. Maak het volgende nieuwe formulier (niet gebaseerd op een tabel of query) in de ontwerpweergave:
       Form: UDPForm   --------------------------------   Caption: UDP Form   Command button:     Name: cmdSend        Caption: Send Data     Text box:        Name: Text1        Label Caption: Data Received:     Winsock control:        Name: axWinsockClient     Winsock control:        Name: axWinsockServer					
  3. Op deWeergavemenu, klikt u opCode.
  4. Typ de volgende regel in de declaratie sectie van het formulier klassemodule:
    Dim wsClient, wsServer As Winsock					
  5. Typ de volgende procedures.

    Optimaal illustreren hoe het besturings element Winsock tussen client en server werkt, worden de procedures vermeld in de volg orde waarin ze plaats vinden.
    Private Sub Form_Load()   ' Set the control objects when the form loads.   Set wsClient = Me!axWinsockClient.Object   Set wsServer = Me!axWinsockServer.Object   ' Set the protocol for client and server.   wsClient.Protocol = sckUDPProtocol   wsServer.Protocol = sckUDPProtocol   ' Set the host and ports for client and server. Because client   ' and server are the same computer in this example, set RemoteHost   ' equal to LocalIP.   wsServer.RemoteHost = wsClient.LocalIP   wsServer.RemotePort = 1007   wsClient.Bind 1007End SubPrivate Sub CmdSend_Click()   ' Send a broadcast message from the server.   wsServer.SendData "Hello"End SubPrivate Sub axWinsockClient_DataArrival(ByVal bytesTotal As Long)   Dim strServerMsg As String   ' When a message arrives from the server, display it in a text   ' box.   wsClient.GetData strServerMsg, vbString   Me!Text1.Value = strServerMsgEnd Sub					
  6. Opslaan en sluiten van het formulier UDPForm.
  7. UDPForm openen in de formulier weergave en klikt u op deGegevens verzendenknop.

    Het tekstvak wordt weer gegeven "Hello". Omdat dit een verbindingsloos transmissie is, hoeft u niet voor een client / server-verbinding.
ODE

Waarschuwing: dit artikel is automatisch vertaald

Eigenschappen

Artikel-id: 209905 - Laatst bijgewerkt: 01/14/2015 08:08:00 - Revisie: 3.0

Microsoft Access 2000 Standard Edition

  • kbnosurvey kbarchive kbhowto kbinfo kbusage kbmt KB209905 KbMtnl
Feedback