[Mono-list] Sockets, Serial Ports and Stupid General Questions...

David P. Bowler dbowler at hegemony.com
Thu Aug 11 10:30:06 EDT 2005


Hi,

I just recently started trying to use Mono again after not playing with it 
for a year or more...

Nice changes...

Ok, small talk done.

My scenario...
Main Dev box: Wndows XP
Secondary Dev Box: SuSe 9.3 (Under construction, almost done, not too 
relevent)

I need to write an application that uses asynch sockets and communicates 
with the serial ports...
I downloaded Mono 1.1.8 for windows and installed it, made a "hello world" 
and everything was peachy.

I installed SharpDevelop and was surprised to find that there is no step 
debugger and that mdb isn't fully baked yet... Not too big a deal as I have 
Visual Studio for the socket parts and the SerialPort stuff I have to do is 
so straight forward that I can compile it with gmcs and everything seems 
fine...

Or so I thought. I made my first test application that opens and reads the 
socket it needs to and even communicates with the serialports and I was 
really happy, having been able to get proof of concepts for all the 
"external" conversations my app will need to participate in and it only took 
a couple hours... But then I started getting suspicious about whether it was 
really using the mono libs when I discovered that I actually had the dotNet 
2.0 beta installed. After uninstalling the dotNet 2.0 beta libraries, my 
"mono" app stopped working.

So, here are some of my basic non-unix user stupid questions as a new mono 
user...
1. Is there some relationship I don't understand between the Mono libs and 
dotNet frameworks?
2. Is there special steps I need to take to build and run mono apps using 
the "2.0" stuff for things like SerialPorts, which I do not think exist is 
the 1.1 stuff? (I thought that gmcs basically accomplished that, but, do I 
need to also run the app with special "mono.exe" switches to make sure it 
uses the correct 2.0 runtime libraries?)
3. Are the socket classes(asynch in particular) fully baked in mono? ripping 
out all serialport stuff and trying to do a basic build, I kept getting a 
"Socket is already connected" exception thrown by my call to EndConnect() in 
my connection callback. The closest similar problem I found was: 
http://lists.ximian.com/pipermail/mono-bugs/2005-February/025733.html  The 
same code works fine in dotNet.
4. Is all this trouble likely because I am testing on windows? My SuSe box 
will hopefully be done today and SuSe is the long term target for some of 
these applications, but I had hoped to be able to continue using windows as 
my dev box because I prefer the tools and because the majority of my work is 
straight dotNet.

I apologize for some of the more basic questions, as I am complete newb with 
some of this, but in google searches, I didn't really find answers for any 
of this.

I'd love it if someone could point me to some HOWTO's that just show how to 
build/run for 1.1 and for 2.0, including how to correctly reference the 
applicable framework libraries and that explain any tweaks or differences 
between platforms when doing so.

P.S. How can I get in on the mdb action? I went to the site as directed, but 
it was not available as a package, nor was svn available for it...

Cheers,
David 



More information about the Mono-list mailing list