title: How can I update an application over the network in .NET?
body: <p>I need to install some .NET software on several PC's.</p>
  
  <p>This software needs to check each time it is restarted to see if a newer version exists on the server.</p>
  
  <p>The end users will have basic user rights and therefore cannot copy files to the 'Program Files' directory.</p>
  
  <p>If a newer version exists, the application closes, an updater program copies the file from the server, then it restarts the application.</p>
  
  <p>However, I wanted to build my updater so it would be application independent. I.e. I'd send an id to the updater to tell it which application to update.</p>
  
  <p>Then I wanted to make it still work if the file server name was changed.</p>
  
  <p>I think I can do all this using a service, with admin rights, to copy the files.</p>
  
  <ol>
  <li>Is there a class that does this kind of thing already?</li>
  <li>Am I on the right track when I am thinking of using an installed service?</li>
  </ol>