Gå til innhold

Winsock Array (>1 klienter på 1 server)


Anbefalte innlegg

For de som kanskje vil ha flere klienter koblet opp mot en server med Winsock, har eg laget en guide for dette.....

 

Som noen kanskje vet, støtter ikke Winsock flere klienter koblet på samtidigt, men ved å lage et array av Winsock`er, så er dette mulig.

 

1. Lag en Winsock (kall den f. eks. Winsock, eller noe lignende)

 

2. Lag en ny Winsock som du kaller det SAMME som den forrige...

Da spør VB om du vil lage et control array...svar JA til dette

 

3. Slett den siste Winsock`en vi lagde, nå er den winsock`en du har igjen et array (du kan legge merke til at det står en (0) etter navnet...)

 

4. Så tar vi en liten variabel deklarasjon:

Private intConnection As Integer

Denne vil da holde følge med på hvor mange som har koblet seg til Winsock`en...

 

Winsock(0) vil ALLTID, lytte etter nye tilkoblinger, mens programmet lager nye som tar seg av klientene.

 

5. Skrive ConnectionRequest prosedyren

 

   'legger til 1 bruker på intConnection
   intConnection = intConnection + 1
   
   'legger til en winsock i control array`et
   Load Winsock(intConnection)

   'ber winsock`en om å akseptere tilkoblingen
   Winsock(intConnection).Accept requestID

 

Hvis du vil bregense antall brukere som maks kan koble seg til server`en (i dette tilfellet 4), legger du bare til:

 

If intConnection = 4 Then
   Exit Sub
End If

i begynnelsen av ConnectionRequest prosedyren...

 

Nå kan du la flere brukere koble seg til Winsock`en...

 

Hvis du f.eks vil sende data til klient 2 skriver du bare inn

Winsock(2).SendData "Hallois!"

 

Beklager hvis dette er litt dårlig forklart, bare spør hvis det er noe!

 

-Codeman

Lenke til kommentar
Videoannonse
Annonse

Opprett en konto eller logg inn for å kommentere

Du må være et medlem for å kunne skrive en kommentar

Opprett konto

Det er enkelt å melde seg inn for å starte en ny konto!

Start en konto

Logg inn

Har du allerede en konto? Logg inn her.

Logg inn nå
×
×
  • Opprett ny...