Next Generation Emulation banner
1 - 4 of 4 Posts

·
Registered
Joined
·
2 Posts
Discussion Starter · #1 ·
How to bind more than one client in one computer to winsock server

i have 1 application server in server computer
and 5 client application in one computer. ( install 5 client in one computer )
i use oswinsck winsock UDP protocol
if only 1 client connect to server, everything well done
but if more than one client connected to server , will be errror
"Method 'Bind' of object 'IMSWinsockControl' Failed


my question is how to solve this problem
application server and application client , i made with ms.access xp

-----------
server
-----------
Option Compare Database
Dim WithEvents WsServer As OSWINSCK.Winsock


Private Sub cmdSend_Click()
On Error GoTo salah
WsServer.SendData txtUserIdJats
Exit Sub

salah:
MsgRoes Err.Description, "Test Msg"
End Sub


Private Sub Form_Load()


Set WsServer = CreateObject("OSWINSCK.Winsock")
WsServer.Protocol = sckUDPProtocol
WsServer.RemoteHost = ipserver
WsServer.RemotePort = rport

End Sub


Private Sub WsServer_OnClose()
WsServer.CloseWinsock
End Sub

Private Sub WsServer_OnDataArrival(ByVal bytesTotal As Long)
On Error GoTo salah

Dim sBuffer As String
WsServer.GetData sBuffer
Me.List6.AddItem "Data : " & sBuffer & vbCrLf

Exit Sub

salah:
MsgRoes Err.Description, "Winsock Data Arrival"
End Sub

Private Sub WsServer_OnError(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 Boolean)
MsgBox Description, vbOKOnly, "Winsock Error: " & Number
CancelDisplay = True
End Sub



---------------------
Client
---------------------

Option Compare Database
Dim WithEvents wsClient As OSWINSCK.Winsock

Private Sub Command5_Click()
wsClient.SendData Me.Text6
End Sub



Private Sub Form_Close()
wsClient.CloseWinsock
End Sub


Private Sub Form_Load()

Set wsClient = CreateObject("OSWINSCK.Winsock")
wsClient.Protocol = sckUDPProtocol
wsClient.Bind 51010


End Sub


Private Sub wsClient_OnDataArrival(ByVal bytesTotal As Long)

Dim sBuffer As String
wsClient.GetData sBuffer
Me.List6.AddItem "Data : " & sBuffer & vbCrLf

End Sub
 

·
Hackin 'n Slashin
Joined
·
38,506 Posts
Please try and look for the correct forum for your question next time...don't just post it anywhere...
 

·
Knowledge is the solution
Joined
·
7,484 Posts
What I normally do with Unix sockets sockets is to fork a process for every client that comes and request a connection. That is, you use a main socket for listening for start session requests, but you fork a new, different socket to establish a formal connection with that client. That way you can keep the main socket open to listen for more incoming connections (This would be akin to some sort of socket factory).
 

·
Registered
Joined
·
2 Posts
Discussion Starter · #4 ·
@SCHUMI_4EVER , thx for your's warning and sorry for that
@proto , thx for reply, right now i don't know what are you mind, but i will try to search your answer in google and thx again for open my mind.
 
1 - 4 of 4 Posts
This is an older thread, you may not receive a response, and could be reviving an old thread. Please consider creating a new thread.
Top