473,387 Members | 1,516 Online
Bytes | Software Development & Data Engineering Community
Post Job

Home Posts Topics Members FAQ

Join Bytes to post your question to a community of 473,387 software developers and data experts.

Any recommendations for a socket library?

Hi all.
I'm an old salt VB/Com developer with now years of .Net. I was never
a heavy C++ guy but now I'm trying to get into game programming at it
seems to be the best fit.

I'm now starting to get my rudimentary network pieces going. The
client is going to run a C++ and my backend will be .Net.

My question is whether anyone had recommendations regarding socket
libraries. I have a nice book entitled "Programming Multiplayer
Games" by Mulholland Hakala that basic shows you how to do things at
the API level. But am I wasting my time try to learn the details and
instead use a library? I see a lot about ACE on the newsgroups but is
it supported? Will I find quick tutorials to get me up and running
quickly? What I'm worried about are all the "tricks of the trade" and
school or hard knocks best practices that will keep my app running
smoothly when various situations arise.

Thanks for any comments.
mark
Jul 22 '05 #1
4 1804
Mark Sisson wrote:
Hi all.
I'm an old salt VB/Com developer with now years of .Net. I was never
a heavy C++ guy but now I'm trying to get into game programming at it
seems to be the best fit.

I'm now starting to get my rudimentary network pieces going. The
client is going to run a C++ and my backend will be .Net.

My question is whether anyone had recommendations regarding socket
libraries. I have a nice book entitled "Programming Multiplayer
Games" by Mulholland Hakala that basic shows you how to do things at
the API level. But am I wasting my time try to learn the details and
instead use a library? I see a lot about ACE on the newsgroups but is
it supported? Will I find quick tutorials to get me up and running
quickly? What I'm worried about are all the "tricks of the trade" and
school or hard knocks best practices that will keep my app running
smoothly when various situations arise.

Thanks for any comments.
mark

If it's going to use .NET, you could make use of the System.Net.*
namespace classes (namely objects in the Sockets namespace) for basic
network communication. It's not really a full networking library per
say, but it does have some basic classes like TcpClient and UdpClient
that you could use. Of course you could always resort to raw sockets.
Jul 22 '05 #2
Thanks for the reply but I'm already well versed in the System.Net.*
namespace for .Net. My problem is the C++ (non-managed code) on the
client. I chose to use C++ for the client rather than managed code
due to the large footprint of a .Net install for the client.
Jul 22 '05 #3
Use ACE. It is free. It gives nice frameworks like Reactor, Connector
etc. to do socket programming.
http://www.riverace.com/acebooks/index.htm
Thanks.
Dhina

ma**@corporatedigital.com (Mark Sisson) wrote in message news:<88**************************@posting.google. com>...
Thanks for the reply but I'm already well versed in the System.Net.*
namespace for .Net. My problem is the C++ (non-managed code) on the
client. I chose to use C++ for the client rather than managed code
due to the large footprint of a .Net install for the client.

Jul 22 '05 #4
Mark Sisson wrote:
Hi all.
I'm an old salt VB/Com developer with now years of .Net. I was never
a heavy C++ guy but now I'm trying to get into game programming at it
seems to be the best fit.


ACE http://www.cs.wustl.edu/~schmidt/ACE.html is a vary mature framework for
networked programming.

Lothar
Jul 22 '05 #5

This thread has been closed and replies have been disabled. Please start a new discussion.

Similar topics

4
by: Bryan Olson | last post by:
Here's the problem: Suppose we use: import socket f = some_socket.makefile() Then: f.read() is efficient, but verbose, and incorrect (or at least does not play will with others);
7
by: Dario | last post by:
I have an unmanaged library that handle many TCP/IP connections. In my .NET application i want to test if there is input available on these connections. Using an existing function of the unmanaged...
1
by: J. Dudgeon | last post by:
Hello, I've written a server that acts as a proxy between the PC and the mainframe worlds. This server service is writting in C# w/.NET 1.1. The service is TCP/IP based and makes heavy use of...
2
by: Ed Fair | last post by:
Hi, I am having a name collision between a library call and a class I've created. My class is called "socket", it abstracts a TCP socket. In my constructors for my class, I am calling the...
4
by: Joe Kinsella | last post by:
The following code behaves differently from what I would expect: socket = new Socket(AddressFamily.InterNetwork, SocketType.Stream, System.Net.Sockets.ProtocolType.Tcp); socket.Blocking = false;...
9
by: AA | last post by:
This is making me crazy!! Please, if some body can help me. I'm testing a ver simple socket client. In my test I just open and close a connection (in a loop) to my local IIS server (port 80)...
5
by: Arno | last post by:
reposted with the right microsoft managed newsgroup ID: Sorry for the inconvinience Hi, I've written a class for client-socket connection, but I get a lot of times the error message "Unable...
6
by: roblugt | last post by:
I have what I imagine is a well-known .Net networking problem, but even though I've Googled for some time I've not yet come across a thread where this has been fully explained... There is a...
11
by: atlaste | last post by:
Hi, In an attempt to create a full-blown webcrawler I've found myself writing a wrapper around the Socket class in an attempt to make it completely async, supporting timeouts and some scheduling...
0
by: taylorcarr | last post by:
A Canon printer is a smart device known for being advanced, efficient, and reliable. It is designed for home, office, and hybrid workspace use and can also be used for a variety of purposes. However,...
0
by: Charles Arthur | last post by:
How do i turn on java script on a villaon, callus and itel keypad mobile phone
0
by: ryjfgjl | last post by:
If we have dozens or hundreds of excel to import into the database, if we use the excel import function provided by database editors such as navicat, it will be extremely tedious and time-consuming...
0
by: ryjfgjl | last post by:
In our work, we often receive Excel tables with data in the same format. If we want to analyze these data, it can be difficult to analyze them because the data is spread across multiple Excel files...
1
by: nemocccc | last post by:
hello, everyone, I want to develop a software for my android phone for daily needs, any suggestions?
0
by: Hystou | last post by:
There are some requirements for setting up RAID: 1. The motherboard and BIOS support RAID configuration. 2. The motherboard has 2 or more available SATA protocol SSD/HDD slots (including MSATA, M.2...
0
marktang
by: marktang | last post by:
ONU (Optical Network Unit) is one of the key components for providing high-speed Internet services. Its primary function is to act as an endpoint device located at the user's premises. However,...
0
Oralloy
by: Oralloy | last post by:
Hello folks, I am unable to find appropriate documentation on the type promotion of bit-fields when using the generalised comparison operator "<=>". The problem is that using the GNU compilers,...
0
jinu1996
by: jinu1996 | last post by:
In today's digital age, having a compelling online presence is paramount for businesses aiming to thrive in a competitive landscape. At the heart of this digital strategy lies an intricately woven...

By using Bytes.com and it's services, you agree to our Privacy Policy and Terms of Use.

To disable or enable advertisements and analytics tracking please visit the manage ads & tracking page.