|
-
Mar 30th, 2007, 03:07 PM
#1
Thread Starter
Hyperactive Member
[2005] How to create a program updater
So I created a very simple application updater that uses HTTP, but I want to move towards something more advanced, maybe a webservice or a TCP/IP or UDP application (I have a dedicated server capable of handling thousands of connections.)
I couldn't find much in the way of socket samples on the web.
Anyone have any ideas?
To clarify, my main app is supposed to connect to the server, send unique information to verify it's identity, and then the server can pass commands back, including sending a file. The server of course would need to stay active 24/7.
Last edited by tylerm; Mar 30th, 2007 at 03:16 PM.
-
Mar 30th, 2007, 03:16 PM
#2
Re: [2005] How to create a program updater
maybe you want to look at using BITS.
BITS is Microsoft's Background Intelligent Transfer Service. It is the same service Microsoft uses to deliver Automatic Updates to Windows users.
Here is an MSDN Magazine article on using BITS with .NET
http://msdn.microsoft.com/msdnmag/issues/03/02/bits/
Here is another article with more VB related code about BITS
http://msdn2.microsoft.com/en-us/library/ms997639.aspx
-
Mar 30th, 2007, 03:21 PM
#3
Thread Starter
Hyperactive Member
Re: [2005] How to create a program updater
 Originally Posted by kleinma
Hmmm. Does BITS allow me to send and recieve strings of information. See, the problem I had with my HTTP updater was that any user could download the updates, which isn't a problem, because my serial system will still ask for a serial number.
I'm trying to make it so the user has to send a serial key to the server so it can be verified, like Windows does with Guenine Advantage program. (The serial keys are stored in a SQL database.)
-
Mar 30th, 2007, 03:42 PM
#4
Re: [2005] How to create a program updater
as far as I know BITS is JUST the service for doing the actual transfering.
You would write the functionality to send the key to your server and verify it, and the server would then respond back saying something like "the key is ok, BITS can start doing the download". This could be done using your existing HTTP method probably, or a webservice would work too.
-
May 15th, 2007, 12:20 PM
#5
New Member
Re: [2005] How to create a program updater
did you ever figure out a way to do this other than http download ?
I have a similar need. (i.e. I want the end machine to pass some data for authentication purposes).
If you got anywhere with this, please let me know if you want to share tips.
thanks
-
May 15th, 2007, 01:42 PM
#6
Re: [2005] How to create a program updater
do you have a website that runs on a windows server? If so you could likely create a webservice that your windows app consumes, and you can use that for authentication purposes.
-
May 15th, 2007, 01:46 PM
#7
New Member
Re: [2005] How to create a program updater
Yes, I will be running my own server.
One of my biggest needs for this is so that I can have 'selective' updates. For instance, I want to have groups of users. Such as 'Beta Testers', 'End Users', etc.
That way, beta testers can get immediately notified when beta software is out, but that is not visible to 'end users', etc.
I've done a lot of looking around on this and don't really see anything outside of the typical make a config / xml file and push some files down. I think I'll just have to break down and start doing some coding on this ....
-
May 15th, 2007, 01:48 PM
#8
Re: [2005] How to create a program updater
that is what I do...
one of the advantages is that you can make it exactly how you want it. It may take a little longer to code things yourself, but if you code it correctly, you can reuse this on any projects you ever want to auto update.
Just don't make it specific to the app at hand, make it generic enough to be reusable.
-
May 15th, 2007, 01:54 PM
#9
New Member
Re: [2005] How to create a program updater
The problem is that if I do it exactly how I want, its going to be ridiculous. I'd run a backend database to track releases by a file level, allow for a file level update type (overwrite, binary difference, etc), user/group permissions, blah blah blah blah. Then I'll need to write a backend system so that you can easily add new releases, etc.....
I just really didn't want to go into THAT much detail. However, everything else is too little detail I guess.
-
May 15th, 2007, 02:13 PM
#10
Thread Starter
Hyperactive Member
Re: [2005] How to create a program updater
I decided to write my own updater system. I'm using Infralution's licensing system so i added that authentication step into the process.
Tied into the ILS database, I created a backend for deploying releases. Still using basic HTTP to download the files. The files themselves are useless without a key.
My overall concern was to validate the product, not deployment. Since the product I designed was to be used in trial form as well. The best way to prove the software was genuine was to check it when it updated.
Posting Permissions
- You may not post new threads
- You may not post replies
- You may not post attachments
- You may not edit your posts
-
Forum Rules
|
Click Here to Expand Forum to Full Width
|