Click here to Skip to main content
15,166,980 members
Please Sign up or sign in to vote.
0.00/5 (No votes)
See more:
Can you please suggest me the topics I need to refresh before even thinking to write a Client Server application.

Purpose: I need to send and receive files from a Unix box from windows client.
I will be creating a GUI client on Windows machine and then through GUI client I want to upload and download files onto Unix box.

I have been searching for a while to implement cross platform client server architecture but I could only come across programs or tutorials teaching client - server programs either targetting only to windows or unix but not between windows to unix or unix to windows.
Even i found information related to concept of RPC and as well as TCP IP programs.

Is there any concrete argument of when to use RPC or when to write TCP IP programs.

If the above concepts are not related to what I am trying to achieve then please suggest me best sites which include tutorials which teach me.

Please note that I am trying to achieve through C as I am a beginner and I feel really comfortable in programming in C to some extent.
Albert Holguin 5-Jun-12 15:54pm
RPC- Remote Procedure Call... is mostly a concept and not an actual implementation...

At this point, best to go with sockets... most flexibility. Server and client could be on different OS, run on different frameworks, be written in different programming languages. All that is shared is an open-API that simply describes the bytes in the messages. It's really simple after you've done it once.
Adding to Albert's Solution, you may try looking at example source code of FTP clients.

No need to write your own protocol when there are well supported standards out there for file transfer.
Albert Holguin 5-Jun-12 16:32pm
Very true... FTP already exists for this. +5
And adding to Albert's and Jack's answers there's a quick answer as to when you need to use RPC:

Only when whatever code you're trying to call makes you use it.

Otherwise, forget it, at least at first. RPC comes with loads of baggage. You'd spend most of your time playing with interface description languages to make sure your function call parameters cross the great divide between the systems rather than coding what happens on the far side.

Once you've written a few sockets programs you may be able to start finding problems that fit RPC better than sockets but start without it until you know a bit more about both's limitations.

This content, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)

CodeProject, 20 Bay Street, 11th Floor Toronto, Ontario, Canada M5J 2N8 +1 (416) 849-8900