473,395 Members | 1,870 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,395 software developers and data experts.

Inter-Appication Communication

Dear All:

I am trying to write an application that consist 2 executables

1) Server.exe
2) Client.exe

I start the server.exe first and then start the two client exe by code and
kill both of the client when the server exit (This is already done)

The question is I want to pass an array of object from the server to the
client and the client will read the list dp some process. The client will
return a processed list back to the server.

Can someone suggest a way to do it in C#?

Thank you very much in advance for any suggestions.

Viper Venom
Nov 16 '05 #1
4 4942
sure, use remoting. Here is an example of a single remoting server.

http://www.glacialcomponents.com/Art...D=RemoteObject

Allen Anderson
http://www.glacialcomponents.com
mailto: allen@put my website url here.com
On Thu, 27 May 2004 00:33:21 +0800, "Viper Venom"
<vi*********@mail.com> wrote:
Dear All:

I am trying to write an application that consist 2 executables

1) Server.exe
2) Client.exe

I start the server.exe first and then start the two client exe by code and
kill both of the client when the server exit (This is already done)

The question is I want to pass an array of object from the server to the
client and the client will read the list dp some process. The client will
return a processed list back to the server.

Can someone suggest a way to do it in C#?

Thank you very much in advance for any suggestions.

Viper Venom


Nov 16 '05 #2
Hi Viper,

I think Allen has provided you the correct information about how to do
inter-application communication(More precision, inter-appdomain or
inter-process communication).

Beside remoting, you also can leverage System.Net namespace to use socket
to do the data transformation. But the difference is that socket is a low
level protocol, which know nothing about .Net object, so you have to
implement the serialization and de-serialization yourself.

At this point, I suggest you to take Allen's suggestion to use Remoting,
which is tailored for .Net, and is strong typed for .Net objects. It will
encapsulate some protocol to do the serialization/de-serialization itself,
so it is much easy for use.

I will also introduce some General information to you:

In Win32, there are many technical to implement inter-process
communication, such as WM_COPYDATA message, Memory Mapping File, Named Pipe
etc.., but they are all unmanaged technical and know nothing about .Net
managed classes.
In .Net, it introduces 2 technicals to access through AppDomain boundary:
.Net Remoting and Web Service. These 2 technicals have different usage,
remoting is more suitable for Client/Server structure application. Remoting
gives you the choice to use different protocol to transform data, such as
SOAP http or TCP.

After general information, I suggest you find some resource document or
book for Remoting to learn some detail information.

Thank you for your patience and cooperation. If you have any questions or
concerns, please feel free to post it in the group. I am standing by to be
of assistance.

Best regards,
Jeffrey Tan
Microsoft Online Partner Support
Get Secure! - www.microsoft.com/security
This posting is provided "as is" with no warranties and confers no rights.

Nov 16 '05 #3
Thank you very much for your reply, I will take a look at it.

Viper Venom

"Allen Anderson" <al***@sparkysystems.com> wrote in message
news:kj********************************@4ax.com...
sure, use remoting. Here is an example of a single remoting server.

http://www.glacialcomponents.com/Art...D=RemoteObject

Allen Anderson
http://www.glacialcomponents.com
mailto: allen@put my website url here.com
On Thu, 27 May 2004 00:33:21 +0800, "Viper Venom"
<vi*********@mail.com> wrote:
Dear All:

I am trying to write an application that consist 2 executables

1) Server.exe
2) Client.exe

I start the server.exe first and then start the two client exe by code andkill both of the client when the server exit (This is already done)

The question is I want to pass an array of object from the server to the
client and the client will read the list dp some process. The client will
return a processed list back to the server.

Can someone suggest a way to do it in C#?

Thank you very much in advance for any suggestions.

Viper Venom

Nov 16 '05 #4
Thank you very much for you detail reply.
I think I will go for the Remoting approach.

Viper Venom
""Jeffrey Tan[MSFT]"" <v-*****@online.microsoft.com> wrote in message
news:bN*************@cpmsftngxa10.phx.gbl...
Hi Viper,

I think Allen has provided you the correct information about how to do
inter-application communication(More precision, inter-appdomain or
inter-process communication).

Beside remoting, you also can leverage System.Net namespace to use socket
to do the data transformation. But the difference is that socket is a low
level protocol, which know nothing about .Net object, so you have to
implement the serialization and de-serialization yourself.

At this point, I suggest you to take Allen's suggestion to use Remoting,
which is tailored for .Net, and is strong typed for .Net objects. It will
encapsulate some protocol to do the serialization/de-serialization itself,
so it is much easy for use.

I will also introduce some General information to you:

In Win32, there are many technical to implement inter-process
communication, such as WM_COPYDATA message, Memory Mapping File, Named Pipe etc.., but they are all unmanaged technical and know nothing about .Net
managed classes.
In .Net, it introduces 2 technicals to access through AppDomain boundary:
Net Remoting and Web Service. These 2 technicals have different usage,
remoting is more suitable for Client/Server structure application. Remoting gives you the choice to use different protocol to transform data, such as
SOAP http or TCP.

After general information, I suggest you find some resource document or
book for Remoting to learn some detail information.

Thank you for your patience and cooperation. If you have any questions or
concerns, please feel free to post it in the group. I am standing by to be
of assistance.

Best regards,
Jeffrey Tan
Microsoft Online Partner Support
Get Secure! - www.microsoft.com/security
This posting is provided "as is" with no warranties and confers no rights.

Nov 16 '05 #5

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

Similar topics

3
by: Zunbeltz Izaola | last post by:
Hi I'm writting a program to get data from a machine. I'm using wxPython to build the GUI. I've a mehtod in a class that get the data, something like this: data = def Measure(self): do...
1
by: David M. Karr | last post by:
I've been asked to help debug a complex problem involving inter-frame references, so I just want to understand the elements involved with this. Apparently, there is a page with multiple frames,...
13
by: Bern McCarty | last post by:
I have run an experiment to try to learn some things about floating point performance in managed C++. I am using Visual Studio 2003. I was hoping to get a feel for whether or not it would make...
6
by: les | last post by:
Here's a class which uses 2.0 generics to implement an inter-thread message queue in C#. Any number of threads can post and read from the queue simultaneously, and the message object can be any...
7
by: Sumedh | last post by:
Hi everyone There is a C# project which calls C++/CLI dll to be able to call native C++ including templates. But the C++/CLI code itself also requires the C# dll to get the types. For example: ...
1
by: Laurence | last post by:
Hi folks, As I konw: database partition (aka data partition?), the database can span multiple machines; table partition, the data within a table can seperate by certain condition. How about...
1
by: halekio | last post by:
Hi all, Please bear with me as I've only started programming in C# 2 weeks ago and this is my first contact with OOP. I ran into a situation where I needed to catch an event in an object that...
0
by: rkprasad | last post by:
I am able to create BASIC-CLEAR-INTEGRATED sql http endpoint and consume it on a LAN. But i am not able to consume the created endpoint on inter domain network. If i create endpoint on a server...
1
by: rsennat | last post by:
Hi, what is the order of the libraries in the Makefile, for linking inter dependent libraries. i'm getting linker error for the following scenario. I have lib1.a and lib2.a, with which lib1.a...
0
by: Rakeshashapur | last post by:
hi, i'm using grid view in vs 2008. i want to inter chang the columns by drag and drop.(similary to reordered list extender of Ajax control tool kit). please any one explain me how to do this. (if...
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: emmanuelkatto | last post by:
Hi All, I am Emmanuel katto from Uganda. I want to ask what challenges you've faced while migrating a website to cloud. Please let me know. Thanks! Emmanuel
1
by: Sonnysonu | last post by:
This is the data of csv file 1 2 3 1 2 3 1 2 3 1 2 3 2 3 2 3 3 the lengths should be different i have to store the data by column-wise with in the specific length. suppose the i have to...
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
by: Hystou | last post by:
Most computers default to English, but sometimes we require a different language, especially when relocating. Forgot to request a specific language before your computer shipped? No problem! You can...
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
by: Hystou | last post by:
Overview: Windows 11 and 10 have less user interface control over operating system update behaviour than previous versions of Windows. In Windows 11 and 10, there is no way to turn off the Windows...
0
tracyyun
by: tracyyun | last post by:
Dear forum friends, With the development of smart home technology, a variety of wireless communication protocols have appeared on the market, such as Zigbee, Z-Wave, Wi-Fi, Bluetooth, etc. Each...
0
agi2029
by: agi2029 | last post by:
Let's talk about the concept of autonomous AI software engineers and no-code agents. These AIs are designed to manage the entire lifecycle of a software development project—planning, coding, testing,...

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.