VB.Net swapping files between machines

Hi Experts
I need to send a file from a server to a client machine, have the client act on the contents of the file and send a result back to the server as another file.
I looked at named pipes but this seemed overly complicated for such a simple task.
I also looked at sockets but this seemed to require that the client was also a socket server to swap files in both directions.
Anyone got an idea for the simplest way to do this and an example?
Many thanks in advance
Who is Participating?
käµfm³d 👽Connect With a Mentor Commented:
Sockets are messy because you have to write your own protocol on top of them. I would look into Katana, or self-hosting a WCF service (there's plenty of articles on that topic on the web).
Scott McDaniel (Microsoft Access MVP - EE MVE )Infotrakker SoftwareCommented:
When you say "have the client act on the file", do you have to execute that action? Or is it something the client would do automatically?

Are the machines on the same network? Or would the client have to "download" the file, or something of that nature?
PNRTAuthor Commented:
Thanks for the reply
The client would have to carry out instructions based on the file content.   Create a response file and then send that response file back.

To be honest it wouldn't even have to be a file, just a string of instructions.  I just thought a file might ne easier

The client would be on the same network but not necessarily on the same subnet.

Thanks again
Free Tool: Path Explorer

An intuitive utility to help find the CSS path to UI elements on a webpage. These paths are used frequently in a variety of front-end development and QA automation tasks.

One of a set of tools we're offering as a way of saying thank you for being a part of the community.

David Johnson, CD, MVPConnect With a Mentor OwnerCommented:
They have to connect somehow.. From what I gather what you want is the customer to connect to the data source. Do Stuff, Send a response.  

One way is to code a service, the client connects to the service, pulls their data with a get request, do stuff, post their result using a set.  This requires IIS to be on the server machine and coding a WCF service. Are we talking kilobytes or megabytes of data to be transferred?

you could open up file and printer sharing firewall on the 'server' to allow from - but the client would need to setup routing to route to your server's ip within the LAN without going out the gateway.  This way it is simple SMB sharing.  This requires doing a bit of plumbing.

You haven't stated how the client will be processing the data.. within the client portion of your app or in a separate app? Do they really need a 'file' download and a way of sending the new 'file'?

they could simply have a client app that connects to your SQL server database, pull the needed records, do stuff, send results to a table.
käµfm³d 👽Commented:
@David Johnson
This requires IIS to be on the server machine and coding a WCF service.
Errr, not really. One could use Katana and its components.
PNRTAuthor Commented:
Thanks all for the responses
I was rather hoping for something closer to the sockets solution as if would be less effort than setting up IIS?
Question has a verified solution.

Are you are experiencing a similar issue? Get a personalized answer when you ask a related question.

Have a better answer? Share it in a comment.

All Courses

From novice to tech pro — start learning today.