April 28
Il controllo Winsock in Visual Basic 6 consente di creare programmi che stabiliscono connessioni tra l'altro su una rete, con un programma che funge da server e l'altro come client. Il controllo Winsock ha diversi metodi utilizzati per la connessione, l'invio e la ricezione di dati. È possibile utilizzare i dati letterali, informazioni provenienti da caselle di testo o anche variabili per passare informazioni. Tuttavia, poiché gli array utilizza gli indici e hanno diversi elementi di dati, passando queste opere un po 'diverso rispetto a passare altri tipi di dati.
1 Aprire un nuovo progetto di Visual Basic. Fai clic su "Progetto" nel menu e poi su "Componenti". Scorrere verso il basso nella finestra di dialogo, quindi fare clic sul "6.0 Microsoft Winsock Control" di dialogo per mettere un segno di spunta, quindi fare clic sul pulsante "OK".
2 Fare doppio clic sul controllo Winsock nella casella degli strumenti per aggiungere al modulo. Anche fare doppio clic sul controllo CommandButton e il controllo TextBox due volte per aggiungere questi tre controlli al form. Fare clic e trascinare loro di organizzare loro come si vorrebbe.
3 Fare doppio clic sul form per aprire la subroutine Form_Load. Digitare il seguente codice:
Winsock1.LocalPort = portNumber
WinSock1.Listen
Quando il programma server gira, questo codice si apre il Winsock e ascolto per una connessione client sul numero di porta in dotazione. O utilizzare una variabile per impostare un numero di porta o digitare un numero intero direttamente, come ad esempio la porta 21 o 22.
4 Aprire la subroutine WinSock1_ConnectionRequest e digitare il seguente codice:
Se WinSock1.State <> sckClosed Poi
WinSock1.Close
Finisci se
WinSock1.Accept requestID
Questa verifica per vedere se il controllo Winsock ha stabilito una connessione e se è così, si chiude poi accetta le richieste da parte dei clienti per stabilire una nuova connessione.
5 Aprire la subroutine WinSock1_DataArrival e digitare il seguente codice:
Dim strData As String
WinSock1.GetData strData, vbString
Text1.Text = Text1.Text & strData
La prima riga crea una nuova variabile stringa per ottenere i dati in arrivo dal client. La seconda linea dirige il controllo Winsock salva i dati alla variabile. La terza linea aggiunge i nuovi dati a qualsiasi testo esistente nella prima casella di testo.
6 Aprire la subroutine Command1_Click e digitare il seguente codice:
WinSock1.SendData Text2.Text
Questa linea invia semplicemente informazioni dalla seconda casella di testo per il programma client.
7 Aprire un nuovo progetto di Visual Basic. Fare doppio clic sul controllo Winsock, controllo CommandButton e il controllo TextBox per aggiungere ciascuno di questi al form. Fare clic e trascinare loro di organizzare loro come si vorrebbe.
8 Fare doppio clic sul form per aprire la subroutine Form_Load. Digitare il seguente codice:
WinSock1.RemoteHost = IP_computer
WinSock1.RemotePort = portNumber
Winsock1.Connect
Queste linee invia una richiesta di connessione a un server utilizzando i valori HostIP e portNumber. Sostituire questa con le variabili che contengono questi valori o con un valore di stringa per il IP_computer e un intero per il portNumber. Ad esempio, utilizzare "127.0.0.1" come valore padrone di casa, che è l'host locale in modo da poter testare il programma sul computer locale.
9 Aprire la subroutine WinSock1_DataArrival e digitare il seguente codice:
Dim strData As String
WinSock1.GetData strData, vbString
Text1.Text = Text1.Text & strData
Questo codice funziona esattamente come l'arrivo dei dati subroutine per il controllo Winsock nel programma server.
10 Aprire la subroutine Command1_Click e digitare il seguente codice:
myarray Dim (3) As String
myarray (0) = "Questo"
myarray (1) = "è"
myarray (2) = "mia"
myarray (3) = "allineamento".
Per i = 0 Per UBound (myarray)
WinSock1.SendData myarray (i)
Next i
Le prime cinque righe creano una matrice con quattro oggetti stringa e inizializza ogni valore. Le successive tre linee di eseguire un ciclo che inviare ogni elemento dell'array uno alla volta attraverso il controllo Winsock per il programma server. È possibile duplicare questo codice nel programma server di inviare le matrici da lì al programma client.