views:

69

answers:

2

I need to be able to send a string message and receive a string response from a console app running within our organization. I want to pass simple strings back and forth from a remote IP address. What's the best way to do this? My first thought is to listen on a socket, but that seems like overkill. I've looked a little into becoming a WMI producer/consumer, but that's pretty involved too. Also there's System.Runtime.Remoting.Channels.Tcp to register for messages.

It seems like any of these methods would work, but what's the easiest way to get an event to fire when a string arrives and how to pass a string back from a c# console app?

+2  A: 

I suggest you to create a WCF service, as it seems simpler than your alternatives.

Rubens Farias
A: 

If you need this to be in a console application, I personally think that implementing this using sockets is the easiest option, especially if the "Remote IP Address" isn't written in C# or under your control.

The TcpClient class is quite easy to use, if all you're doing is passing a few strings back and forth.

One potential gotcha: If the "server" on the remote IP isn't written in C#, make sure to take care of any encoding issues in the passed byte stream, since C# uses Unicode strings.

Reed Copsey