2 Attachment(s)
Simple Networking Library
The SNL (Simple Networking Library) is designed to be extremely fast and efficient at communicating over the TCP Protocol using Binary Serialization. The system itself manages most of the resources, leaving you (the programmer) with a few areas you can hook into (such as events) to determine what your program needs to do.
Inside the Networking.VB file, you will find two different regions:
- P2P Client/Server Example
- Generics, Structures and Exceptions
The P2P region speaks for itself, serving as an example for how to use the system as a Peer-to-Peer like system for communicating using Binary Serialization.
The Generics, Structures and Exceptions region contains all the classes and structures for SNL to work.
Also included is an example application that uses the Peer to Peer Classes so you can see it in action.
At the head of the Networking.VB file, there is a rather large comment section that explains in detail every structure and class file currently in the file.
Any questions, comments, or criticism welcome!
Changelog:
February 12th, 2011
Version 1, Revision 4 uploaded.
Networking Example uploaded.
Re: TCP Client/Server Classes
Update: 6/30/2010
Man, I completely screwed up the .SendMessage() Sub. It didn't even actually send the message :(. I also fixed a few bugs with the Login & Registration not working if you failed once. Now it should work just fine. Feedback is welcome.
Re: TCP Client/Server Classes
Update: 7/04/2010
Well, I did a lot of things. I cleaned up some code in TCPV2.vb as well as TcpClient.vb, but I did a bit more than that too. The TCPV2 now includes a type of Queue system for storing messages sent to an offline person, as well as friend requests. The queue is processed whenever a user logs in and they are checked for items saved in their name. It was messy to debug, but it works now.
It also will allow you to remove friends even if someone is offline, and it won't force sync them either (which caused some problems). Instead, until the other person re-adds them, it won't show them online. Think of it as a permanent blocking mechanism.
The Client Class was also adjusted as to what gets error handled now. Thread Aborts are ignored (not necessary), and disconnecting clients are handled better to the point where it won't (stupidly) keep blank users connected. It improved the clientside as well.
Speaking of which, on the Client side, there were a few new subs added (to simplify tasks), and some others streamlined, but that's about it. Leave some responses if you would please as to how it's working for people (Bug reports accepted here and also by PM).
Re: TCP Client/Server Classes
Update: 7/20/2010
Well I had a blast fixing this thing up. I redid the TCPV2 class's events somewhat to act like the framework, using the ByVal sender As Object, ByVal e As SomeDataArgs signature for every event. Since the server only had like....5 or so events, that wasn't a big deal. The TcpClient however is going to be much harder to do since it has 15 events to format like that :(
No real updates done to TcpClient yet, but I'll still upload it with the latest version I have.
Re: TCP Client/Server Classes
New versions released, check main post.
Re: TCP Client/Server Classes
great job man. I am going to look into using this.
Re: TCP Client/Server Classes
Would be pretty nice if you included a sample app of how to use some of these functions.
Re: TCP Client/Server Classes
Quote:
Originally Posted by
TCarter
Would be pretty nice if you included a sample app of how to use some of these functions.
You can see my Open Source Instant Messenger here.
Re: Simple Networking Library
I have uploaded the Simple Networking Library, which is an entire rewrite of the system, making it more generic and simplistic, allowing other people to write their own classes that utilize the lower level communication systems as well as an example application that shows message based communication on a Peer to Peer level.
Before you ask any questions, read all the comments in the code.
Re: TCP Client/Server Classes
Quote:
Originally Posted by
formlesstree4
You can see my Open Source Instant Messenger
here.
Bumping an old thread.....
OP, your source doesnt compile...
any chance to upload a working version?
'user' class error, i already got the zip dll...
tks
Re: TCP Client/Server Classes
Quote:
Originally Posted by
cbuosi
Bumping an old thread.....
OP, your source doesnt compile...
any chance to upload a working version?
'user' class error, i already got the zip dll...
tks
Sadly no, I do not. I have pretty much stopped working on this. I have a new version in the works that's easier to use. Sorry about that.
Re: TCP Client/Server Classes
Quote:
Originally Posted by
formlesstree4
Sadly no, I do not. I have pretty much stopped working on this. I have a new version in the works that's easier to use. Sorry about that.
No problem, thank you anyway!