[Open Source]Docket[TCP Socket DLL] (Client Only)

Posts 1–15 of 18 · Page 1 of 2
[Open Source]Docket[TCP Socket DLL] (Client Only)
okay i wrote this up pretty quick cause i saw that other post about making a open source one so i wrote this in like 10 min :P

its only the client if you guys like ill write the Server Aswell

i will not include downloads ill just post pure source

It includes events, anti crashing, reconnect if connection fails and properties
The Source is Not Commented on but it is only VB.NET

if you want to see more shit like this say so i can code this shit in VB.NET and C# just send me a pm or reply

Code:
'Credits To DeToX <--Thats Me
'Fast Simple Socket System Open Source
'Please Include Credits
'DocketClass
Imports System.Threading, System.Net, System.IO, System.Net.Sockets
Public Class Client
#Region "Declarations"
    Dim TcpClient As New TcpClient()
    Dim Remote_IP As String = vbNull
    Dim Remote_Port As Int32 = vbNull
    Public Event RecievedData(ByVal Data As String)
    Public Event FailToConnect(ByVal Reason As String)
#End Region
#Region "Main Code"
    Sub New(ByVal IP As String, ByVal Port As Int32)
        Remote_IP = IP
        Remote_Port = Port
    End Sub
    Sub Connect()
        Try
            TcpClient.Connect(Remote_IP, Remote_Port)
            TcpClient.GetStream().BeginRead(New Byte() {0}, 0, 0, AddressOf Recieve, Nothing)
        Catch ex As Exception
            Thread.Sleep(4000)
            RaiseEvent FailToConnect("Error Connecting To Host")
            Connect()
        End Try
    End Sub
    Sub Recieve(ByVal Ar As IAsyncResult)
        Try
            Dim Reader As New StreamReader(TcpClient.GetStream())
            RaiseEvent RecievedData(Reader.ReadLine())
            TcpClient.GetStream().BeginRead(New Byte() {0}, 0, 0, AddressOf Recieve, Nothing)
        Catch ex As Exception
            Thread.Sleep(4000)
            RaiseEvent FailToConnect("Error Reading Data From Host")
            Connect()
        End Try
    End Sub
    Sub SendData(ByVal Data As String)
        Try
            Dim Writer As New StreamWriter(TcpClient.GetStream())
            Writer.WriteLine(Data)
            Writer.Flush()
        Catch ex As Exception
            Thread.Sleep(4000)
            RaiseEvent FailToConnect("Error Sending Data To Host")
            Connect()
        End Try
    End Sub
#End Region
#Region "Properties"
    Private ReadOnly Property BufferSize
        Get
            Return TcpClient.ReceiveBufferSize()
        End Get
    End Property
    Private ReadOnly Property Connected
        Get
            Return TcpClient.Connected
        End Get
    End Property
    Private ReadOnly Property Available
        Get
            Return TcpClient.Available
        End Get
    End Property
#End Region
End Class
thanks Detox ,

Guy's this is my long time buddy, he is trust worthy!
beat me lol, but mine will be better ^.^
Wait Till I Post My C# one :P im gunna show other things to like how to send pictures and files more then the maxium amount of data TCP can send
Quote Originally Posted by Deto View Post
Wait Till I Post My C# one :P im gunna show other things to like how to send pictures and files more then the maxium amount of data TCP can send
so it will be udp/tcp?
uhg detox dont release are whole c# rat we plan on selling the source rember,
maybe but UDP sucks because data sometimes isnt recieved in the same order it is sent...
Quote Originally Posted by Deto View Post
maybe but UDP sucks because data sometimes isnt recieved in the same order it is sent...
dosen't mean its bad, its just different.
meh i never said it was bad.... UDP Does transfer more then TCP so is usefull for files and shit
Quote Originally Posted by Deto View Post
meh i never said it was bad.... UDP Does transfer more then TCP so is usefull for files and shit
UDP is definitely worse for transferring files... Unless you implement checksum verification - UDP does not provide guaranteed packet delivery, whereas TCP does, to an extent
TCP for standard data transfer, UDP primarily for Video & Audio.
UDP is Faster then TCP but it not meant for standard data information at all, UDP does not provide any flow and congestion control, It's meant to send data as fast as possible without any error handling.

So as to which is better or worse, it's more of a matter of use & Reason.

@ OP's source, Looks Good.
ugh :Pthe TCP Server im making to go along with this has a property to display all incomming bytes and packets
Quote Originally Posted by Deto View Post
ugh :Pthe TCP Server im making to go along with this has a property to display all incomming bytes and packets
you should add a UDP Client too xD. I'm updating my class, it's now utmost done.
I added:
  1. Log System
  2. Statistics
  3. UDP Client
  4. Voice Transfert ( Non-Tested )
  5. Server Manager
Quote Originally Posted by freedompeace View Post
UDP is definitely worse for transferring files... Unless you implement checksum verification - UDP does not provide guaranteed packet delivery, whereas TCP does, to an extent


you could also use split


Packet Example
Code:
FILEPIECE(1):Bytes Of File
then increase the (1) with each file peice

hmm im gunna just ditch this project actually and write a new one in c# its a lot easier :P C# .net :P
Quote Originally Posted by Deto View Post
you could also use split


Packet Example
Code:
FILEPIECE(1):Bytes Of File
then increase the (1) with each file peice

hmm im gunna just ditch this project actually and write a new one in c# its a lot easier :P C# .net :P
Even if you do that, because of the UDP design, you have no guarantee that you will receive all packets, and no knowledge if you do happen to miss one. You might even get a packet twice, or out of order!

UDP has its uses, however. Things like (simple) chat clients, multimedia streaming and online games are great for UDP. UDP is "connectionless", has no initial overhead before transfer (which is quite significant in TCP), and doesn't try to address a problem with flow control when you miss a packet, because by the time the error correction has finished it's probably too late to use it anyway, and so on.
Posts 1–15 of 18 · Page 1 of 2
This thread is closed for replies.

Tags for this Thread

None

Talk with us