03-09-2004, 09:38 AM | #1 (permalink) |
Addict
Location: Grey Britain
|
[VB6] Winsock Chat app with multiple clients
I'm trying to write a chat app that will eventually be included in a larger piece of software. I haven't been coding in VB for long and it's a lot harder than I expected.
I want the program set up so that a central server is used to pass messages between individual clients. I also want each client to have a dropbox which lets them choose from a list of other online clients and I need to take a log of all conversations. I have already written (Or rather I've largely plagiarised ) a very simple single client-server chat program and I'm in the middle of converting it. It's going very slowly (writing it, not running it) and I would gladly welcome any relevant tips, advice, links, etc.
__________________
"No one was behaving from very Buddhist motives. Then, thought Pigsy, he was hardly a Buddha, nor was he a monkey. Presently, he was a pig spirit changed into a little girl pretending to be a little boy to be offered to a water monster. It was all very simple to a pig spirit." |
03-10-2004, 04:01 AM | #3 (permalink) |
Addict
Location: Grey Britain
|
I've just decided to scrap what I've written and start again from scratch, rather than wading through sloppy code. Essentialy what I'm doing is looking like it's going to end up as a reverse engineered msn messenger without any of the trimmings.
Initially I tried starting with a single client single server, simulated on one machine, then used between two machines. Although this was a useful way to learn winsock, it was proved very difficult to build from. So to make my question a little more specific, any pointers on the order I should put it together in so that I can test and debug it on the way through. Also I'm struggling to get my head round the listening getting and sending the server has to do. If you know of any tutorials or source code that deal with that that area of this specific problem, that would be appreciated. I have searched planetsourcecode etc. but only turned up single client or chatroom type things, which appear to be quite a different kettle of fish. Also I need to be able to send updated lists of who's online to each client each time someone logs on or off as well as sending details to each client of who each message is from. What's the best way to distinguish between this info data and the actual text being sent. Should I do it cyclically, using tags of some sort, having set places for different data in the strings that are sent or some other way? I realise that I'm effectively asking you to write my whole program for me here and obviously I don't expect you to do that, but anything here that you could help out with I'd be grateful for. Cheers
__________________
"No one was behaving from very Buddhist motives. Then, thought Pigsy, he was hardly a Buddha, nor was he a monkey. Presently, he was a pig spirit changed into a little girl pretending to be a little boy to be offered to a water monster. It was all very simple to a pig spirit." |
03-13-2004, 01:40 AM | #4 (permalink) |
Crazy
Location: Raleigh, NC
|
Make sure you have a good plan. Just mainly decide what exactly you want your client and server to do. From my experience actual implementation is the easy part. I haven't written many networking apps, but I would say that it doesn't exactly matter as long as it works. You can always change it.
__________________
"Good artists copy, great artists steal." - Pablo Picasso |
03-13-2004, 09:52 AM | #5 (permalink) |
Insane
Location: Belgium
|
You should make a protocol so the client and server can communicate easy to eachother
like with some numbers in ftp clients sends hello i'm alive to server: 100 clientNameOrIPOrWhatever server responds to client a nd sends a list of connected clients or something terminated by a termination string you like 101 user1 user2 user3 ### and so on just a thought
__________________
Let's GO |
Tags |
app, chat, clients, multiple, vb6, winsock |
|
|